Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

BACI basics

In this section we will modify our smart bulb ACS component in order to make it BACI compliant. BACI is a control interface specification we use for ACS at ALMA. For more details this document is available. There is also another useful tutorial here. BACI is only available for C++ components.

...

  • Each component can access one and only one controlled device.
  • Characteristics are static variables in the component. They can be read by the controller, but can be set only by the component, depending on context. They are monitoring points.
  • Properties are variables set by the controller. They are control points.
  • Getters for characteristics are synchronous.
  • It is recommended to implement asynchronous accessors to properties, but not mandatory.

Modifications needed

To make our component a BACI compliant code, we must perform the following modifications:

...