27 using namespace KM3NETDAQ;
36 JParser<> zap(
"Auxiliary program to monitor summary data.");
39 zap[
'n'] =
make_field(numberOfEvents) = JLimit::max();
45 catch(
const exception &error) {
46 FATAL(error.what() << endl);
57 while (inputFile.hasNext()) {
59 STATUS(
"event: " << setw(10) << inputFile.getCounter() <<
'\r');
DEBUG(endl);
65 for (JDAQSummaryslice::const_iterator frame = summaryslice->begin(); frame != summaryslice->end(); ++frame) {
67 Q1.put(frame->testDAQStatus() ? 1.0 : 0.0);
68 Q2.put(frame->testWhiteRabbitStatus() ? 1.0 : 0.0);
70 Q3.put((
double) frame->countHighRateVeto() / (double)
NUMBER_OF_PMTS);
71 Q4.put((
double) frame->countFIFOStatus() / (double)
NUMBER_OF_PMTS);
75 if (frame->getValue(pmt) != 0) {
79 if (!frame->testHighRateVeto(pmt) &&
80 !frame->testFIFOStatus (pmt)) {
81 Q6.put(frame->getRate(pmt));
86 Q5.put((
double) numberOfPTMs);
90 for (
const JQuantile* p : { &Q1, &Q2, &Q3, &Q4, &Q5, &Q6}) {
95 <<
FIXED(7,5) << Q1.getMean() <<
' '
96 <<
FIXED(7,5) << Q2.getMean() <<
' '
97 <<
FIXED(7,5) << Q3.getMean() <<
' '
98 <<
FIXED(7,5) << Q4.getMean() <<
' '
99 <<
FIXED(8,1) << Q5.getMean() <<
' '
100 <<
FIXED(7,0) << Q6.getMean() <<
' '
101 <<
FIXED(7,0) << Q6.getSTDev() << endl);
Utility class to parse command line options.
Auxiliary data structure for floating point format specification.
Auxiliary class for defining the range of iterations of objects.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Auxiliary data structure for average.
#define QAQC(A)
QA/QC output macro.
Object reading from a list of files.
const JLimit & getLimit() const
Get limit.
static const int NUMBER_OF_PMTS
Total number of PMTs in module.
int qaqc
QA/QC file descriptor.
#define DEBUG(A)
Message macros.