![]() | ![]() | ![]() | Specifying a busy manager | ![]() |
Busy managers are responsible for indicating when the computer is dead or unable to accept a new trigger. The computer is dead in the time between a trigger occuring and the event readout completing. It is also dead when the run is paused or halted.
Substituting a user written busy manager for one of the standard busy managers is a matter of:
To write a busy manager, subclass the CStatusModule class. The important functions that must be defined are:
Once your busy manager has been created, you must instantiate it and register the object you created. You should do this in your SetupReadout function. The fragment below shows how to do this for a class CMyStatus:
void MyReadout::SetupReadout(CExperiment& rExperiment) CReadoutMain::SetupReadout(rExperiment); rExperiment.EstablishBusy(new CMyStatus); ...
![]() | ![]() | ![]() | Specifying a busy manager | ![]() |