User Tools

Site Tools


Sidebar

Imprint

code:dqmh:hse-flavour

HSE DQMH Flavour

More information on DQMH can be found in our knowledge base:
Delacor Queued Message Handler

Over the last few years, we not only used DQMH very heavily, we also started building additional features around the DQMH core.

This page describes the HSE-specific modifications and additions to the DQMH code, which include:
- our collection of (more or less useful) HSE Libraries
- DQMH modules build for various specific needs
- a UI framework for applications with Graphical User Interface


HSE Helper VIs

These VIs are not part of the DQMH default features and have to be implemented manually in every HSE DQMH module.

Load Module.vi

Combines Start Module.vi and Synchronize Module Events.vi. Wrapping these allows to programmatically start any module (by use of call by reference) as the module-specific connector panes are hidden away.


Obtain Default Broadcast Events.vi

Encapsulates the module-specific Obtain Broadcast Events for Registration.vi and only returns the default broadcast event references that any HSE DQMH module features. Wrapping the VI allows to programmatically obtain the default event references as the module-specific connector panes are hidden away.

Event references returned are:

  • Status updated
  • Error reported
  • Module Did Stop
  • Update Module Execution Status
  • System Message (HSE-specific event)


HSE Generic Broadcasts

These events are not part of the DQMH default features and have to be implemented manually in every HSE DQMH module.

'System Message'

Sends a HSE-generic broadcast message, consisting of an Identifier, a variant Payload and Source information.
  • Provides a generic way of broadcasting information
  • Allows for dynamic registering and triggering of broadcast events

  • string Identifier
  • variant Payload
  • enum Source Type (module, application, network)
    • the typedef can be found in hse-libraries/hse-dqmh.lvlib/Templates and Controls/System Message Source.ctl
  • string Source Name (Module Name)
    • for clones, the Clone ID is appended to the Module Name
Singleton
Cloneable

System Messages

Add to Run-Time Menu
Ready for Display
Removed from Subpanel

HSE Generic Requests

These events are not part of the DQMH default features and have to be implemented manually in every HSE DQMH module.

'Configure' Request

Triggers the auto-configuration of the module.
  • Lets the module configure itself
  • The connector pane has to be generic (i.e. only error in / error out) so that this VI can be called dynamically
  • The default behaviour of the 'configure' MHL case is to read the module's configuration data from the configuration directory (see Project Structure and hse-configuration for details).


'Prepare' Request

Prepares the module for displaying its front panel.
  • used by our Windows Application Template to automatically let a module know when its front panel is about to be displayed so the module can prepare (reset controls etc.)


HSE UI Requests

These events are not part of the DQMH default features and have to be implemented manually in every HSE DQMH module.

The UI-related requests are only used in our UI framework based applications. You can find more information in our HSE Application Template.

'Request UI Display' Request and Wait for Reply

Requests a module to display its UI as specified in the parameter Scenario. The module can either ignore or accept the request.

If the requested Scenario is “stand-alone”, the module simply shows its front panel.

For the “managed” scenario, the module will send a System Message broadcast with the Ready for Display message, which will be processed by the UI Manager module. More details can be found at the HSE Windows Application Template project.

Note: The connector pattern shown above is also necessary for DQMH 5.0, which introduces new connector patterns for Request and Wait for Reply events.


HSE API Tester

The API Tester of any given HSE DQMH module will come with the following additions to the default DQMH API tester:

Properties

In order to be able to launch the API tester programmatically from our UI Framework, it's necessary to make the VI show its front panel when called and close it afterwards.

HSE Libraries

For the API tester to be able to start a module that depends on the various HSE Libraries helper functions (eg hse-application, hse-configuration or hse-logger), the API tester needs to initialise the HSE Libraries first.

hse-dqmh.lvlib:DQMH Tester Prepare hse-appl.vi
hse-dqmh.lvlib:DQMH Tester Cleanup hse-appl.vi

Broadcasts

“System Message” broadcast
“hse-logger logging event” broadcast

Requests

  • Buttons for calling the “Configure” and “Prepare” events
code/dqmh/hse-flavour.txt · Last modified: 2020/05/26 10:52 by joerg.hampel