Jump to content

LVCLASS File Extension: Difference between revisions

From LabVIEW Wiki
New page for lvclass file extension
 
Eyesonvis (talk | contribs)
Added details about changes to the LabVIEW Class file contents in LabVIEW 2025 Q1
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
The '''LVCLASS File Extension''' (''.lvclass''), or <u>L</u>ab<u>V</u>IEW <u>Class</u> Library, is a special form of [[LabVIEW Library]] file that defines a new data type. LabVIEW classes define data associated with an object, as well as the methods that define the actions you can perform on the data. The benefits of [[Encapsulation|encapsulation]] and [[Inheritance|inheritance]] allow you to create modular code that is easy to change without affecting code throughout the application.
The '''LabVIEW Class''' file extension (''*.lvclass'') is used for class libraries in [[LabVIEW object-oriented programming]]. A class library is a special form of [[LabVIEW Project Library|project library]] that defines a new data type in LabVIEW. It contains meta data about the class and its members, a private [[custom control]] that is embedded in the class library (there is no separate file on disk) and links to class methods.


==See Also==
In LabVIEW 2025 Q1, the LabVIEW Class file no longer stores the connector panes of member VIs in binary format. Instead, LabVIEW stores a ''NI.ClassItem.InvokeUsage'' property that is a number:
*[[LabVIEW Classes]]
 
*[[Object oriented software|Object-Oriented Programming]]
* 1 = Dynamic method
* 2 = Static property read
* 3 = Static property write
* 4 = Dynamic property read
* 5 = Dynamic property write
* 6 = Data unflatten (loads the class to unflatten a piece of data)
* 7 = Exists (loads the class for the private data control)
* 8 is unused
* 9 = Not a function (used for controls, globals or Polymorphic VIs)
 
==See also==
*[[Object-oriented programming]]


[[Category:LabVIEW file extensions]]
[[Category:LabVIEW file extensions]]
[[Category:Object-Oriented Programming]]

Latest revision as of 23:01, 31 January 2025

The LabVIEW Class file extension (*.lvclass) is used for class libraries in LabVIEW object-oriented programming. A class library is a special form of project library that defines a new data type in LabVIEW. It contains meta data about the class and its members, a private custom control that is embedded in the class library (there is no separate file on disk) and links to class methods.

In LabVIEW 2025 Q1, the LabVIEW Class file no longer stores the connector panes of member VIs in binary format. Instead, LabVIEW stores a NI.ClassItem.InvokeUsage property that is a number:

  • 1 = Dynamic method
  • 2 = Static property read
  • 3 = Static property write
  • 4 = Dynamic property read
  • 5 = Dynamic property write
  • 6 = Data unflatten (loads the class to unflatten a piece of data)
  • 7 = Exists (loads the class for the private data control)
  • 8 is unused
  • 9 = Not a function (used for controls, globals or Polymorphic VIs)

See also