Create MHL Case tool (Ctrl+9)

Quickdrop Shortcuts

In Workers 5.0, you no longer manually create MHL cases for a Worker or Worker base class. This tool will automate the creation of new MHL cases for you.

In Workers 5.0, it is recommended that you use the new Worker API VIs to send messages between Workers and no longer use Case Labels and the Workers 4.0 messaging API VIs.

To find out more about the new Workers 5.0 API VIs, see this section: Worker APIs.

Activating the Ctrl+9 Quickdrop shortcut from the block diagram of a Worker's Main VI will open the Create MHL Case tool. This tool can be used to perform the following tasks:

  1. Create new MHL cases (non-Public API MHL cases)

  2. Edit non-Public API MHL cases

  3. Override non-Public API MHL cases

Creating undefined MHL cases

You can use the Create MHL Case tool to create an undefined MHL case with a Case Label (i.e. the MHL case is not used to receive a Local or Public API message). To create an undefined MHL case, simply uncheck the options at points 2. and 3. in the image above, and you will be able to create an undefined MHL case with a Case Label.

Editing non-Public API MHL cases

All MHL cases that are not created by the Public API Builder tool can be edited through the Workers MHL Case Editor tool. This tool can be opened by pressing the Edit MHL Case button at position 4. in the image above.

Current MHL Case Name

The current name of the visible MHL case.

New MHL Case Name

The new name of the visible MHL case. The new name will be updated in the following places:

If the visible MHL case is a Local API MHL case:

  1. The filenames of the associated Local Request VIs and typedefs

  2. The visible MHL case name

  3. The internal Case Label constant within the Local Request VI

If the visible MHL case is not a Local API MHL case:

  1. The associated Case Label

  2. The visible MHL case name

Icon Text

Text that will be written on the Local Request VI and typedef icons, to help users understand which MHL Case will receive the Local Request message.

MHL Case Description

A new description for the MHL case. If this MHL case is a Local API Request MHL case, then the description will also be written to the Local Request VI description.

Good to know

If this tool is being used to edit a non-Public API MHL case in a Worker base class, then all Workers that inherit from the Worker base class (within the scope of the open LabVIEW project) that override the non-Public API MHL case will also have the override MHL case name and description updated.

Override MHL Cases (tab)

This feature is much like the Override MHL cases section of the Public API Builder tool, but it can be used to override non-Public API MHL cases of a Worker base class into a Worker that inherits from the Worker base class.

Overriding Worker base class non-Public API MHL cases

To add non-Public API MHL cases from a Worker base class into a Worker, perform the following steps:

Step 1. Select one or more non-Public API MHL cases that you want to add to the selected Worker.

Step 2. Press Add selected MHL Cases to Worker.

After the tool has completed adding the Worker base class MHL cases into the selected Worker, you can jump into the Worker's new MHL cases directly from the tool, through the 3. Right Click Menu. The image below is shows an override MHL case in a Worker, that was added by following the steps above.

Override MHL case features

You can tell that a MHL case in a Worker overrides a MHL case of the same name in a Worker base class by the following features:

  1. The message data types used by the MHL case are typedefs that are owned by the Worker base class, and not by the Worker that is using them.

  2. The description text for the MHL case is written in blue text. This means that this description is owned by the Worker base class. If the Worker base class MHL case description is changed in the Workers MHL Case Editor tool, then the MHL case description in the override case (image above) will also be updated.

Last updated