Jump to content

Goop Developer 2.0 Tutorial


Recommended Posts

Dear Kurt,

I write this request on LAVA instead of Sciware-forum, since it will reach a bigger audience and I hope to see more opinions (from other people who tried it).

While using Goop Developer and building a project, it happens "often" (I know it shouldn't ;) ) that a virtual method needs additions on the conn-pane after having created the child-class methods. To my experience this is a crutial step that easily results in a runtime-error "1031, VI Reference type does not match VI connector pane", which is a "pain in the a...<cough>" to resolve ...must have done something wrong, I had to delete and rewrite the child methods :angry: .

Could you add a step-by-step description regarding this to your tutorial?

Link to comment

Hi Didier

At the moment there is no procedure within GOOP Developer that will auto generate the controls and indicators on an existing child to match the parent, however there are a couple of techniques.

When you modify a control on the parent, go through and make the same changes to the children, ie copy the control over and connect it to the con pane to match the parent, then right click on the parent class and select Tools -> Update Virtuals. This will update every virtual methods "This VI's Type" which updates the CBRN in the Descendant implementation so that the interface between parent and child methods are consistent.

Another technique would be to copy the Self implementation code for every child into an empty vi, then delete every child and then re-create them by sending the parent method to all children, and then copy paste the Self implementation code back into every child.

If it's an issue for users then I can look at some scripting voodoo that will update all child virtuals of a parent virtual if it's interface changes, I don't think this will be difficult. GOOP Developer could initiate an integrity check when a virtual method is saved and if there are modifications then it will prompt the user if they want GOOP Developer to automatically propagate the changes to the child methods.

I'm collecting an issues and feature request list to incorporate into the next build, so please let me know if there is anything which is frustrating you or would make life easier, or if you have an idea for a feature.

Link to comment
When you modify a control on the parent, go through and make the same changes to the children, ie copy the control over and connect it to the con pane to match the parent, then right click on the parent class and select Tools -> Update Virtuals. This will update every virtual methods "This VI's Type" which updates the CBRN in the Descendant implementation so that the interface between parent and child methods are consistent.

It's more or less what I did, except that I manually click-and-draged each virtual methods conpane to its vi-ref "This VI's Type". But somehow it didn't worked... or should I have dragged highest level conpane to all its children methods "This VI's Type"?

Link to comment
It's more or less what I did, except that I manually click-and-draged each virtual methods conpane to its vi-ref "This VI's Type". But somehow it didn't worked... or should I have dragged highest level conpane to all its children methods "This VI's Type"?

The "Update Virtuals" utility will save you from manually moving the con pane into "This VI's Type" except if you are working in 6.1 where the scripting operations are not available. I wouldn't drag the base class con pane into all children's "This VI's Type", it's too much work and I'm not sure what the consequences may be, I haven't tested that scenario.

Link to comment
When you modify a control on the parent, go through and make the same changes to the children, ie copy the control over and connect it to the con pane to match the parent, then right click on the parent class and select Tools -> Update Virtuals. This will update every virtual methods "This VI's Type" which updates the CBRN in the Descendant implementation so that the interface between parent and child methods are consistent.

I tried the trick with "Tools -> Update Virtuals" with the result that now ALL virtual methods return Error 1031 :angry:

EDIT: Just found the problem: on the parent class I modified the error in to "recomended", but not on the child class :oops: .

Link to comment
I tried the trick with "Tools -> Update Virtuals" with the result that now ALL virtual methods return Error 1031 :angry:

EDIT: Just found the problem: on the parent class I modified the error in to "recomended", but not on the child class :oops: .

I think there probably should be a warning in the documentation cautioning the user that the interface between parent and child methods must be the same. As the developer who knows it inside and out I can sometimes overlook some of the pitfalls that I naturally assume and take for granted. I am working on making GOOP Developer a more user friendly product and also putting work into the GOOP Template, any feedback or ideas is most welcome.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.