top of page

LabVIEW G# Framework

G%23_edited.png

What is LabVIEW G#?

The LabVIEW G# Framework is a free, award winning add-on toolkit for LabVIEW that enables reference based object-oriented programming. It has excellent performance and supports native labVIEW classes. The framework seamlessly integrates into the LabVIEW project environment. This next generation of Object-Oriented support makes LabVIEW as powerful as any object-oriented language. It also comes with a UML plugin for the G# Framework.

 

The G# Framework is a National Instrument Compatible with LabVIEW Gold product and has been awarded "LabVIEW Add-On of the Year for Community at NI Week 2011".

 

*G# is a registered trademark of ADDQ Consulting.

"As engineering challenges are becoming increasingly complex, software engineering tools are very, very important to help scale LabVIEW to these larger and larger applications. So I am very proud to announce the community award this year to QESTIT for the G# Product.”

 

Jeff Meisel, LabVIEW Product Manager, Partner Program, National Instruments at NI Week 2011

What can G# do?

Any object-oriented language must fulfill the following fundamental requirements: abstraction, encapsulation, inheritance and polymorphism. The G# framework has taken inspiration from C# and Java and can do many of the same functions, including:

​

  • A common root object for all classes, called G#Object.

  • Garbage Collector, objects don’t need to be destroyed explicitly.

  • Interface support, instead of supporting multiple inheritance.

  • Abstract methods and abstract classes.

  • Use native LabVIEW objects in combination with the new data value reference in LV2009.

  • Includes support to keep objects alive and avoid LabVIEW Garbage collection.

  • Support for static classes and class attributes.

  • Named objects with user counter.

  • Serialization of objects.

  • G# events that can be traced.

  • Desktop Trace Execution Toolkit events support.

  • Powerful debugger option with possibility to probe attributes, log events and also offer an active debug possibility.

  • Support for Dependency Injection – dynamic plug-in of sub classes

Want to see more of what G# can do
Click the link to attend one of our LabVIEW courses in G#.

What comes with the G# Toolkit?

G# – The actual LabVIEW code that implements the reference based Object-Oriented support to LabVIEW. This is open source code per the terms of BSD-license. It includes:

​

  • G#Object – the root object that all classes inherits from.

  • G#Interface – the root interface that all interfaces inherit from.

  • G#Templates – class templates that are copied to create new classes.

​

G# Debugger – a powerful object debugger tool, used for tracing and debugging objects when executing the code. This code is open source code per the terms of BSD-license.

​

G# IDE (Integrated Development Environment) – a plug-in to the LabVIEW Project Environment and makes it easy to create and maintain the G# code. The IDE is not open source and copyright by ADDQ Consulting. The G# IDE is not necessary when executing the code.

​

For more information, please visit the G# Online Manual.

Download G# for LabVIEW

The G# Framework is free and requires no license. You may install the G# IDE with as many users and computers as you like.

​

Supported LabVIEW Versions

  • Version 1: LabVIEW 2017 Full Development or higher.

  • Version 2: LabVIEW 2020 Full Development or higher (with interfaces support).

​

Supported Operating Systems

  • Windows XP/Vista/7/Server 2003 R2 (32bit)/Server 2008 R2(64 bit).

  • Red Hat Enterprise Linux WS 4 or later openSUSE 10.3 or later.

​

Note: G# Framework will probably work on all LabVIEW supported platforms, but is not tested.
 

As a good UML design tool we recommend the free, open source tool StarUML together with the free G# StarUML Plug-in extension.

​

Version 1: Download for 2017 or higher for free here

Version 2: Download for 2020 or higher for free here

​

​

Download

G# UML Plugin

QESTIT’s award-winning and free plugin to G# will take your code design process to the next level. Use professional design tools to automatically generate LabVIEW-code or reverse the process to generate UML code from LabVIEW-code.

​

UML is a widely used language that provides a standard way to visualize the design of a system. Visit uml.org for more information.

Main Features:

  • Generate code – Automatically generate LabVIEW code from UML class diagrams.

  • Reverse-engineer – Automatically generate UML class diagrams from LabVIEW code.

​

The plugin supports many commonly used UML and LabVIEW/G# features to make your UML represent your code as close as possible. Both G# and LabVIEW native classes are supported. This includes UML classes relations, attributes, methods and method parameters.

​

The plugin supports WhiteStarUML for creating UMLs. WhiteStarUML is an open source tool and is a continuation of StarUML, which has been the ruling open-source UML tool for many years. It integrates into WhiteStarUML, which makes it easy to design and maintain the LabVIEW G# code in a professional UML design tool.

​

The G# UML plugin is a National Instrument Compatible with LabVIEW Silver product and awarded "LabVIEW Add-On of the Year for Community at NI Week 2011".

​

For more information, please visit the G# UML Plugin Online Manual.

​

UML

Download G# UML Plugin

The G# UML Plugin is free and requires no license. You may install the G# IDE with as many users and computers as you like.

​

Supported LabVIEW Versions

  • LabVIEW 2012 Full Development or higher with G# Framework toolkit 1.6.1 or higher installed.

​

Supported StarUML Versions

  • WhiteStarUML 5.5 or higher. Download from: whitestaruml.sourceforge.net/
    For StarUML-support, an older version of the plugin is available upon request.

​

Download for free here

bottom of page