LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Call by Reference Node with strict type of nested class

Hello,

 

i'm migrate to Labview 2010,

i define a class DPM and a class MANAGER.

The Manager contains a DPM.

The DPM has a run() function and a RefDPM attributes (strict type of the VI function).

 

The run function try a Call by Reference Node on a VI with strict type.

This VI has two input parameters: A DPM and a MANAGER.

 

The problem is:

Labview compilateur does not want to compile the DPM class because of the VI strict Ref.

 

This work perfectly with Labview 2009.

Does Labview change its policy about Labview 2010 ??

 

0 Kudos
Message 1 of 23
(3,693 Views)

A very highly "dumbed-down" example would help greatly in undersatnding this question properly.

 

I have heard of no changes (yet!).

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 2 of 23
(3,689 Views)

Yes, here the code view

Download All
0 Kudos
Message 3 of 23
(3,677 Views)

Simply, i want to run dynamically a VI module with nested class input parameters.

0 Kudos
Message 4 of 23
(3,671 Views)

Does it helps you ?

0 Kudos
Message 5 of 23
(3,650 Views)

What error when you float over that wire with the wire tool?

 

Have you tried right-clicking on the call by ref and selecting "adapt to type"? (Forgive me if that doesn't exist. I am answering from memory).

 

I still think that if yo uposted a small zip that works in 2009 and not in 2010 may help somebody (don't have 2010 on any machine yet).

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 6 of 23
(3,647 Views)

The errors are: (Translated into English)

CallByReferenceNode: Contains bad terminals or unwired terminals.

Wire: the input reference of CallByReferenceNode must be a strict reference of VI.

 

When i try to use a direct reference its working (like image_1).

In this case, i must suppress the reference in the DPM, and here there no more error. (image_2)

But of course the reference is open dynamically so i want to keep a link on my dynamic VI.

 

Can not i use a strict ref which include self-class ?

 

Best regards.

 

PS: the project is really huge size to be zipped.

Download All
0 Kudos
Message 7 of 23
(3,612 Views)

Will a type cast work?

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 8 of 23
(3,599 Views)

OK, i have build a small example.

In LV_2009 there is no compilation error.

In LV_2010, the example does not compile.

 

Open the project, and just check the two class .cpl to see if compilation is right.

 

 

0 Kudos
Message 9 of 23
(3,596 Views)

lacking 2010 I will have to step aside and let someone else try this out.

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 10 of 23
(3,587 Views)