Introduction

The complete documentation for the DAQ - DCS Communication package may be found at CERN/EDMS as https://edms.cern.ch/document/684955/5.3

General changes

No changes of the data and message transfer functionality or interface.

Extention of the Command Transfer facilities

1. The facility of allowing non-transition commands just after the boot of DDC controller is introduced as the default one. In order to disable this facility an additional command line option -A "YES"/"NO" of ddc_ct_dim  application with default value YES may be set by NO. The performance of command transition increased (by permanent command response subscription).

2. The libddc library of DDC API is extended with new ddcExecCommand() and virtual notify() functions. This provides higher level (than existing API function set) interface for sending non-transition commands. It completely hides using IS for that purpose and delivers the command response (with notify()) directly to the user application.
Note: Users should re-compile their application, using DDC API, but they don't need to introduce any changes unless they want to use new functionality.

3. The library libddc_direct is developed like a facility to transfer non-transition commands by direct using the DIM package. The library does not use any other tdaq packages
and, therefore, can be used beyond the TDAQ partition environment. It provides sending NT-commands independently of each other as well as of the transition commands,  receiving asynchronously their responses and notifying the user application.
Note: This is a "smart" command sender, which should be used carefully, with taking care on the DCS side to prevent possible command collisions and/or contradictions.

4. An internal facility of benchmarking the NT-command transfer is introduced.

Note: None of extentions requires changing of user applications unless new facilities are necessary.

Extention of test applications

1. The new ddc_direct_cmdr application is provided for testing the direct sending non-transition commands.
2. The ddc_sendcmd application is extended for making benchmark of sending a NT-command.