19 out_file = fopen(
"Ring_log.txt",
"wt");
37 out_file = fopen(
"Ring_log.txt",
"wt");
46 po::value<int>()->default_value(4800),
47 "QwEventRing: ring/buffer size");
49 po::value<double>()->default_value(1),
50 "QwEventRing: Stability ON/OFF");
56 Double_t stability = 0.0;
86 fNextToBeFilled=(fNextToBeFilled+1)%
fRING_SIZE;
88 if(fNextToBeFilled == 0){
#define QwMessage
Predefined log drain for regular messages.
QwSubsystemArrayParity & pop()
Return the last subsystem in the ring.
void DeaccumulateRunningSum(const QwSubsystemArrayParity &value)
Remove the entry value from the running sums for devices.
bool HasValue(const std::string &key)
Has this key been defined.
po::options_description_easy_init AddDefaultOptions()
Add a default option.
static const Bool_t bDEBUG
static void DefineOptions(QwOptions &options)
Define options.
static const Bool_t bDEBUG_Write
void CalculateRunningAverage()
Calculate the average for all good events.
po::options_description_easy_init AddOptions(const std::string &blockname="Specialized options")
Add an option to a named block or create new block.
void push(QwSubsystemArrayParity &event)
Add the subsystem to the ring.
T GetValue(const std::string &key)
Get a templated value.
Virtual base class for the parity subsystems.
std::vector< QwSubsystemArrayParity > fEvent_Ring
static std::ostream & endl(std::ostream &)
End of the line.
void UpdateErrorFlag()
Update the error flag internally from all the subsystems.
QwSubsystemArrayParity fRollingAvg
Bool_t IsReady()
Return the read status of the ring.
void AccumulateAllRunningSum(const QwSubsystemArrayParity &value)
Update the running sums for devices check only the error flags at the channel level. Only used for stability checks.
void ProcessOptions(QwOptions &options)
Process options.