LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
PrimaryKey

Option for packing LV Class a single file .lvclass containing all the methods.

Status: New

Hi,

 

It would be awesome if there was an option in project window to set if the method is contained within a .lvclass file or ouside of the .lvclass next to it in the folder.

 

Now it's like this:

HowItsNow.png

 

It's hard to use a class like that in a plugin architecture with VIs on the outside. Lets put everything together inside like a LabVIEW LLB!

 

How it should be:

HowItShouldBe.png

 

Don't get me started on Packed Project Libraries 😉 We just need LLB functionality, for the class to behave like a folder and we are happy 🙂

 

Piotr

Piotr Kruczkowski
Certified TestStand Architect
Certified LabVIEW Architect
14 Comments
AristosQueue (NI)
NI Employee (retired)

Can anyone detail why just "save the class and all its member VIs inside an LLB" is a poor solution? I've used that a couple times quite successfully. I don't know why we need a new file extension specifically for a particular type of usage of the collection.

 

Is it just that you want the project to automatically handle the change of file location when a VI changes classes? If so, that would be somewhat easy to do.

avogadro5
Member

Since Packed LVCLASS Package: .lvclassp - NI Community is (imo wrongly) marked as a duplicate of this I'll argue its point here. I find it burdensome to force this kind of plugin architecture to use LVLib/LVLibP as often classes do not need/are not to be in LVLibs except so they can be distributed. IMO the fact you ever need a "single-class lvlib" is on its own evidence LVClassP is needed.

Additionally presumably you could replace LVClass with LVClassP and vice versa manually and with VI scripting, which doesn't appear to be possible if "a.lvclass" is not in a library and I want to replace it with "a.lvlibp:a.lvclass". Again this restriction forces me to change the structure of my code because LVLib has functionality missing from LVClass.

AristosQueue (NI)
NI Employee (retired)

avogadro5: I'll ask you the same question I've asked repeatedly without getting an answer: what's wrong with just saving the whole class inside a .llb file? If all you need is one class, that works completely fine. If you are trying to ship around a set of classes and support files, then the library is appropriate.

avogadro5
Member

I want to use a plugin architecture in RTE. The best way to accomplish this is with packed libraries. I now have to have all my plugins in LVLib even if they're a single class, which is one more file and one more link that will inevitably break, for a file that says "here is this other file."

 

My factory now also has to go digging inside the LVLibP to find the LVClass it wants, whereas a LVClassP could presumably be directly loaded with "Get LVClass Default Value."