Jump to content

XNode Manager


Aitor Solar

Recommended Posts

This is an application for creation and management of XNodes. Hypothetical future versions will be at the bottom of the thread.

Delete elements from 2D array.vi

I think the program is self-explaining in its simplicity. It allows to open or create a XNode and add or remove abilities, and I hope will be a useful tool for anybody who wants to try their own XNodes. I don't have much free time nowadays, but I'll try to correct any problem that arises. I'll love to read your feedback.

Caveats:

1) Some XNodes' private properties and methods doesn't seem to work properly, so this program uses XML VIs. So, you'll need the Internet Toolkit for LV.

2) Maybe the abilities list is not complete (but I have tried all the proposed til now). If you find other abilities, please tell me.

3) This doesn't do the hard work, just provides management (correct patterns, etc). You'll still have to program what your XNode does.

Saludos,

Aitor

Link to comment

QUOTE(Aitor Solar @ Feb 21 2007, 12:12 PM)

They should be in the "comunes Xnode manager.llb" included in the zip.

Saludos,

Aitor

Thanks -- I'll see if I can relink them. Also, this will be a problem for other users too, so it might be best to relink everything correctly and then repost ;)

Link to comment

QUOTE(DanyAllard @ Feb 22 2007, 04:42 AM)

You can find all the Abilities vi's in <LV8.2>\resource\Framework\Providers\xi\xnode.llb

That's the tricky part: not all the abilities in that llb work properly. Some of them give an "ability not recognized" error (different from the "parameter X has incorrect datatype" error, that just means the inputs / outputs for that ability are not what they should).

Anyway, you can add new abilities easily and check them in the XNode Manager, just add the new ability to the list ("Ability list.ctl", IIRC).

Saludos,

Aitor

P.S.: I think the new zip is linked properly, please check.

Link to comment

Fantastic job on this! :thumbup:

This adds the primary necessary functionality to create XNodes now, let the games begin!

One thing that could be added is the documentation for each ability. Sounds tricky, but then again you can find them here:

1) Open Labview 8.x\resources\lvstring.rsc

2) Search for "This is a strict type definition"

3) This refers to the State Ability...the rest follow, separated by x00 or whatever bytes that show up as

post-2-1172347857.png?width=400

Keep in mind the list has grown in LabVIEW 8.2, so don't get the info from the 8.0 folder!

You can probably parse it out, make sure things are pointing to them, whatever here.

I might poke around for a fuller Ability list than what you have (you have most of them), I'll let you know.

Take a look at the presentation I gave last night at LAVA...I ended up skipping over the two "Create an XNode" pages since your utility does all this now! :thumbup:

I'll be posting my example XNode (Recurse) in a couple days when I get a chance to clean it up for the Code Repository.

I'd like to attach the presentation, but it's more than 2 megs.

XNodes Presentation - Lava meeting 02/23/07

QUOTE(Aitor Solar @ Feb 21 2007, 11:50 PM)

That's the tricky part: not all the abilities in that llb work properly. Some of them give an "ability not recognized" error (different from the "parameter X has incorrect datatype" error, that just means the inputs / outputs for that ability are not what they should).

I've noticed some XNodes that have abilites (GetImage.vi) that instead say the ability is the "old" name (Image). Check my ppt presentation for the "old" (8.0) list versus the "new" list (8.2).

If an ability has a 2, 3 following it then it's the working Ability name (example: AAA, AAA2, AAA3). If it's something like "OnXXX" (in LV8.2) and the original is "XXX" (in LV8.0) then the ability "XXX" is the real name, despite the .vi being called "OnXXX" inside the LLB you refer to.

Does that make sense? Not very consistent. I'm also not sure if this is true for all of the "new" names but I noticed it for most of them.

Link to comment

I've created an xnodes category in the code repository. Please post this code there.

Also, please post the xnodes presentation there.

Thanks for the hint on the 2Mb limit, I've increased it to 10Mb.

Don't want to be all administrative and stuff but I might just end up shutting down threads in the future that would rather be initiated via the code repository.

Link to comment

QUOTE(AdamRofer @ Feb 24 2007, 01:02 AM)

Thanks, Adam. Yes, it seems there are some inconsistences, like deprecated abilities that point to an ability not supported. Also, there are at least two VIs that are not abilities but of recommended use: L10N and HelpMap. Here is my last list of abilities, see if you find any hole:

http://forums.lavag.org/index.php?act=attach&type=post&id=5030

QUOTE(Michael_Aivaliotis @ Feb 24 2007, 10:00 AM)

I'm preparing a new version with Adam's suggestions for the Code Repository. But I'm reading the CR requisites and seem daunting :o . I'll try to adapt the code, though.

QUOTE(Jim Kring @ Feb 25 2007, 01:55 AM)

Aitor: Under which license are you distributing the XNode Manager tool? I would like to volunteer to help package this up so that people can install it using
.

Good question. I hadn't thought about that. People is free to use the code, modify it as they please and redistribute it, provided they respect original authorship and their versions retain the same conditions. Is there any of the usually acepted licenses that accomplishes that?

Saludos,

Aitor

Link to comment

QUOTE(Aitor Solar @ Feb 27 2007, 01:23 AM)

I'm preparing a new version with Adam's suggestions for the Code Repository. But I'm reading the CR requisites and seem daunting :o . I'll try to adapt the code, though.

Don't be frightened Aitor! All you need is neat code, a decent style with an appropriate level of documentation and all will be well - it doesn't need to be the best code ever, but it can't be the worst :)

Link to comment
QUOTE(Aitor Solar @ Feb 26 2007, 07:23 AM)
I'm preparing a new version with Adam's suggestions for the Code Repository. But I'm reading the CR requisites and seem daunting :o . I'll try to adapt the code, though.
I'm curious, which specific requirement is daunting? We're just asking for the basics really. Nothing you shouldn't already be doing in your code. ;)
Link to comment

QUOTE(DanyAllard @ Feb 27 2007, 08:20 AM)

I have extracted the help documentation for the abilities and I have formated in a word document with hyperlinks.

Good work. But I think the abilities' public names not always match the internal names. For example, the documentation talks about a BuildMenu, BuildMenu2 and BuildMenu3 abilities, but internally we have a BuildPopup (whose documentation seems what is defined as "BuildMenu" in the doc), BuildMenu (whose documentation seems what is defined as "BuildMenu2" in the doc) and BuildMenu3 (this one 's correct). And a "BuildMenu2" ability in an XNode gives an ability-not-recognized error.

I suspect NI renamed the abilities for the LV8.2 project manager (and hence their name in the documentation) but internally they retain the LV8 name. Pretty chaotic for us :-(

By the way, I have observed the XNode Manager gives an error whenever you add an ability with an absolute path ("relative path?" unchecked). When the application tries to add the VI to the XNode library, it returns a 56003 error ("Adding this item would cause a conflict with an item already in memory"). Strange.

Saludos,

Aitor

P.S.: XNode Manager 1.4 for CR is on its way.

Link to comment

QUOTE(Aitor Solar @ Feb 28 2007, 05:10 AM)

Good work. But I think the abilities' public names not always match the internal names. For example, the documentation talks about a BuildMenu, BuildMenu2 and BuildMenu3 abilities, but internally we have a BuildPopup (whose documentation seems what is defined as "BuildMenu" in the doc), BuildMenu (whose documentation seems what is defined as "BuildMenu2" in the doc) and BuildMenu3 (this one 's correct). And a "BuildMenu2" ability in an XNode gives an ability-not-recognized error.

I suspect NI renamed the abilities for the LV8.2 project manager (and hence their name in the documentation) but internally they retain the LV8 name. Pretty chaotic for us :-(

By the way, I have observed the XNode Manager gives an error whenever you add an ability with an absolute path ("relative path?" unchecked). When the application tries to add the VI to the XNode library, it returns a 56003 error ("Adding this item would cause a conflict with an item already in memory"). Strange.

Saludos,

Aitor

P.S.: XNode Manager 1.4 for CR is on its way.

Thank you Aitor for the update, now it represent the real world of xnodes :thumbup:

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
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.