Introduction
The RunControl package replaces the previous RunController
package and implements all the functionality of the ATLAS DAQ Run
Control. This package offers all the libraries needed to build
applications that can be steered by the Run Control system and,
moreover, contains applications that can be used to actively
interact with the Run Control system.
Main Changes
The Run Control has been fully re-designed and re-implemented and
almost all the classes have been restructured and are not
compatible with their previous versions. Here is a list of the
main classes and interfaces used to build leaf applications and
custom segment's controllers.
- Leaf applications
- Both the Controllable interface and the ItemCtrl
class have been modified and are not compatible with the
previous version;
- Segment's controllers
- Both the UserRoutines interface and the Controller
class have been modified and are not compatible with the
previous version;
- FSM
- The BOOTED state (and relative transitions) has been
removed. That means child controllers and leaf applications
will have INITIAL as their first state;
- Some states during the STOP procedure have been modified
following the evolution of the DAQ DataFlow;
- Sub-transitions
- The old implementation of sub-states via the IS based
barriers has been replaced by sub-transitions that can be
defined in the OKS database at the segment level;
- Ancillary classes
- The ConfigurationBridge has been replaced by the new
OnlineServices class;
- The new class allowing to send commands to Run Control
applications is called CommandSender;
- Helpers
- rc_sender is the new command line tool used to send
commands to Run Control applications;
- rc_controller is the binary for a default controller
(not using any UserRoutines);
- rc_root_controller is the binary for the Root
controller.
Java Library
A new Java library is provided: it contains enumerations
representing all the FSM states and transitions and classes to be
used to send commands to Run Control applications.
Python Library
A new Python library is available: it allows to build leaf
applications running custom Python scripts.
Documentation
The full documentation about this package can be found at this page.