LabVIEW Inheritance Rules

Updated Mar 23, 2020

Reported In

Software

  • LabVIEW

Issue Details

I am using object-oriented programming in LabVIEW and build an inheritance tree. What do I have to keep in mind?

Solution

There are some requirements you need to take care of so all classes and member VIs will be able to run. These requirements define an equivalent setting between ancestor and descendant classes within an inheritance tree concering the following points:

For parents:
  • must be a member VI of the class
  • must have public or protected scope
  • must have a dynamic dispatch input terminal

For child classes:
  • must have the same file name as the parent method
  • must have an identical connector pane¬†except the class type (Dynamic dispatch tunnels)
  • must have the same execution settings in VI properties
  • must have same access scope as the parent

Additional Information

Violating one of the requirements leads to a broken run arrow for all dynamic dispatch VIs within the inheritance tree.