03-26-2013 06:15 PM - modifié 03-26-2013 06:36 PM
Regardez le vi "target" ci-dessous.
le but de la manip:
Créer dans la boucle While un "nouvel objet" du même data_type que le Terminal extérieur du Tunel "T"
... et raccorder ce nouvel objet à l'entrée "type" du node "Data To Variant" ... scripting bien entendu.
l'enjeu est de taille ... c'est la porte d'entrée vers le Polymorphisme parfait ... mon Graal personnel
la boucle While ne sert à rien, c'est juste pour avoir les Tunels. D'ailleurs, target_C ne "tourne" jamais.
J'en suis où ? :
Je sais prélever le Data_Type de l'entrée du Tunel "T"
Je sais créer un nouvel objet du même type que T (Create from Data Type)
Mais ... je n'arrive pas à raccorder ce nouvel objet à l'entrée "type" de la fonction "Variant To Data"
LabView me dit que "les objets spécifiés ne peuvent pas être raccordée entre eux" ... grrr !
ceci dit ...
si j'essaie de raccodrer un "objet existant" à "Variant To Data - type" ... pas de problème, le "wire" est créé.
peut-être une piste ... (ou pas)
"Create From Data Type" crée un objet "Constante" (avec une Reférence "GObject")
Si mon objet pré-existant (non créé) est une constante, je n'arrive pas non plus à la raccorder à "Variant To Data - type".
Si c'est un Control (ControlTerminal) ... alors oui, ça fonctionne.
Un soucis pour raccorder les Constantes via Scripting (?) ... (ou alors, le soucis est totalement ailleurs)
Ci-joint le code de Main_C.vi ... le code qui manipule target_C.vi
si vous avez le code devant vous:
A - au dessus, le code "qui fonctionne" avec l'objet pré-existant.
B - en dessous, le code qui "veut pas" avec l'objet crée (qui est effectivement créé, mais qui refuse le "wire")
Toggle entre les deux avec le Booléen "X" ... c'est une constante ... donc un agit "en manuel" dans le code.
Si un d'entre vous me trouve la solution ... c'est Noël pour moi !
PS:
à chaque fois que vous faites "tourner" le code de Main_C.vi ...
il faut effacer l'objet créé ou la connection établie dans target_C.vi (en manuel)
Résolu ! Accéder à la solution.
le 03-26-2013 07:35 PM