ALMA Computing Group
Modules

Miscellaneous Examples
[ACS C++ Examples Documentation]

Collaboration diagram for Miscellaneous Examples:

Modules

 BACI Callback and Alarm Implementation
 

Description

This header defines a number of BACI callback and alarm implementation classes that are used throughout the clients of the acsexmpl module. Any developer interested in invoking asynchronous methods or creating monitors should definitely review this section.

What can I gain from this example?

  • implementations of CORBA servants derived from the OffShoot IDL interface.
  • implementations of callbacks used to invoke asynchronous methods (e.g., MyCBvoid).
  • implementations of callbacks used to obtain the value of a BACI property asynchronously (e.g., MyCBdouble).
  • implementations of callbacks used to monitor the value of a BACI property (e.g., MyCBdouble).
  • implementations of alarms set to go off when a BACI property's value goes out of range (e.g., MyAlarmdouble).


Links




 Long DevIO Subclass
 

Description

This example should prove to be particularly useful to those developers dealing directly with hardware. The full implementation of a DevIO subclass is presented here and it's usage can be found in the Ramped Power Supply example. DevIOs should be used when you need to keep a BACI property read-only, but also have to change the value of the property dynamically.

What can I gain from this example?

  • the complete implementation of a DevIO subclass.
  • limited asynchronous error handling.


Links




 Power Supply Current
 

Description

PowerSupplyCurrent is provided to show how flexible baci::BACI properties can be. You can also gain a litle insight into how properties are implemented in ACS by reviewing this example.

What can I gain from this example?

  • an example which overrides the ACS implementation of a baci::BACI property.
  • writing values to read-only baci::BACI properties by using the property's underlying DevIO instance.
  • limited ACS logging macros.


Links