INTRODUCTION Overview Download and Install Documentation Publications REPOSITORY Libraries DEVELOPER Dev Guide Dashboard PEOPLE Contributors Users Project Download Mailing lists
|
gbxutilacfr::Status Class ReferenceLocal interface to component status. More...
Inherited by gbxutilacfr::TrivialStatus. Inheritance diagram for gbxutilacfr::Status:
Detailed DescriptionLocal interface to component status.
Each subsystem should first call addSubsystem(), to make the Status engine aware that it exists. If any other function is called before the subsystem is added, a gbxutilacfr::Exception is thrown. The 'maxHeartbeatIntervalSec' parameter tells the Status engine how often it expects to hear from each subsystem. If the subsystem has not been heard from for longer than maxHeartbeatIntervalSec, it is assumed that the subsystem has stalled (hung). The initial default state is Initialising. As soon as initialisation of the subsystem is finished, you should call ok(). This maybe used by external tools as an indication that your subsystem is in "normal" working state.
Member Function Documentation
Adds subsystem to the system status monitor. This command must be called before any other. I.e. all other status commands are ignored unless a subsystem with that name already exists. When trying to add a subsystem with an existing name, the existing subsystem is left unchanged and warning trace is produced. May also specify the maximum expected interval between heartbeats. When time since last heartbeat exceeds this, an alarm is raised. Heartbeat interval is normally positive, measured in seconds. Negative interval means infinite interval, this is the default behavior. The initial state of the subsystem is Initialising. Implemented in gbxutilacfr::TrivialStatus.
Sets subsystem status to Fault. Throws gbxutilacfr::Exception if the subsystem does not exist. Implemented in gbxutilacfr::TrivialStatus.
Record heartbeat from a subsystem: let Status know the subsystem is alive without modifying its status. Throws gbxutilacfr::Exception if the subsystem does not exist. Implemented in gbxutilacfr::TrivialStatus.
Sets subsystem status to Initialising. Note that empty message is assumed if none is supplied. Throws gbxutilacfr::Exception if the subsystem does not exist. Implemented in gbxutilacfr::TrivialStatus.
Sets subsystem status to Ok. Note that empty message is assumed if none is supplied. Throws gbxutilacfr::Exception if the subsystem does not exist. Implemented in gbxutilacfr::TrivialStatus.
Some thread should call this function periodically in order for status publishing to happen. Implemented in gbxutilacfr::TrivialStatus.
Removes subsystem from the status monitor. This should be done for example, if one of the thread is shutting down or restarting. Throws gbxutilacfr::Exception if the subsystem does not exist. Implemented in gbxutilacfr::TrivialStatus.
Modifies maximum expected interval between heartbeats (in seconds). When time since last heartbeat exceeds this, alarm is raised. Throws gbxutilacfr::Exception if the subsystem does not exist. Implemented in gbxutilacfr::TrivialStatus.
Returns status of subsystem with the given name. Throws gbxutilacfr::Exception when the specified subsystem does not exist. Implemented in gbxutilacfr::TrivialStatus.
Sets subsystem status to Warning. Throws gbxutilacfr::Exception if the subsystem does not exist. Implemented in gbxutilacfr::TrivialStatus.
The documentation for this class was generated from the following file: |