LabVIEW Class: Difference between revisions
Added link to Project Items |
Under Construction |
||
| Line 7: | Line 7: | ||
* Unlike [[LabVIEW Project Library|LabVIEW Project Libraries]], LabVIEW Classes cannot contain nested libraries. | * Unlike [[LabVIEW Project Library|LabVIEW Project Libraries]], LabVIEW Classes cannot contain nested libraries. | ||
* [[Auto-populating Folder]]s are not allowed but [[Virtual Folder]]s are allowed. | * [[Auto-populating Folder]]s are not allowed but [[Virtual Folder]]s are allowed. | ||
== Class Members == | |||
A '''LabVIEW Class''' contains its private data and member VIs/CTLs that can operate on the private data. VIs owned by a class can be referred to by different names depending on its function: | |||
* '''Accessor''' - Reads/Writes to the Private Data | |||
* '''Property''' - An Accessor in a Property Definition Folder | |||
* '''Method''' - Any other VI owned by the Class, usually operates on the Class data via a ''Class in'' and/or ''Class out'' on its connector pane | |||
* '''Constructor''' - LabVIEW does not have a specific constructor node, instead the Object is considered constructed where a new Object constant exists. This could be just the constant or sometimes it is the constant wrapped in a VI with some initialization to its data. In the later case a ''"Constructor VI"'' only has a ''Class out''. | |||
=== Creation of Members === | |||
=== Customizing Creation of Class Members === | |||
== See Also == | == See Also == | ||
| Line 15: | Line 28: | ||
[[Category:Project]] | [[Category:Project]] | ||
[[Category:LabVIEW Class]] | |||
Revision as of 17:40, 10 March 2024
A LabVIEW Class is a file with extension, *.lvclass. It is an XML file that stores information about the files owned by the library. The Project Explorer is used to view and edit these files. It is not recommended to edit the XML directly. The LabVIEW Class is a specialization of the LabVIEW Project Library but has extended behavior to contain data and support encapsulation and inheritance for Object-oriented programming.
Project Items
Inside of a LabVIEW Class, there are many types of ProjectItems. A full list of ProjectItem can be viewed on the ProjectItems page.
Note: not all ProjectItem types are allowed in the LabVIEW Class for example:
- Unlike LabVIEW Project Libraries, LabVIEW Classes cannot contain nested libraries.
- Auto-populating Folders are not allowed but Virtual Folders are allowed.
Class Members
A LabVIEW Class contains its private data and member VIs/CTLs that can operate on the private data. VIs owned by a class can be referred to by different names depending on its function:
- Accessor - Reads/Writes to the Private Data
- Property - An Accessor in a Property Definition Folder
- Method - Any other VI owned by the Class, usually operates on the Class data via a Class in and/or Class out on its connector pane
- Constructor - LabVIEW does not have a specific constructor node, instead the Object is considered constructed where a new Object constant exists. This could be just the constant or sometimes it is the constant wrapped in a VI with some initialization to its data. In the later case a "Constructor VI" only has a Class out.