37 using namespace KM3NETDAQ;
47 JParser<> zap(
"Example program to histogram various data profiles.");
51 zap[
'n'] =
make_field(numberOfEvents) = JLimit::max();
57 catch(
const exception& error) {
58 FATAL(error.what() << endl);
62 NOTICE(
"Determine frame index range... " << flush);
64 JFrameIndexRange frame_index = getFrameIndexRange<JDAQSummaryslice>(inputFile);
66 NOTICE(
"= (" << frame_index.first <<
"," << frame_index.second <<
")" << endl);
68 const Long64_t NX = frame_index.second - frame_index.first + 1;
69 const Long64_t nx = (NX + prescale - 1) / prescale;
70 const Double_t
xmin = (Double_t) frame_index.first - 0.5;
71 const Double_t
xmax = (Double_t) frame_index.second + 0.5;
78 JManager_t map_summary(
new TH1D(
"Summary[%]", NULL, NX,
xmin,
xmax));
79 JManager_t map_trigger(
new TH1D(
"Trigger[%]", NULL, nx,
xmin,
xmax));
85 TH1D h2(
"trigger", NULL, nx,
xmin,
xmax);
91 STATUS(
"event: " << setw(10) <<
in.getCounter() <<
'\r');
DEBUG(endl);
98 for (JDAQSummaryslice::const_iterator frame = summaryslice->begin(); frame != summaryslice->end(); ++frame) {
100 if (frame->testHighRateVeto()) {
104 if (frame->testHighRateVeto(pmt)) {
105 map_status[frame->getModuleID()]->Fill((Double_t) pmt);
113 if (!frame->testHighRateVeto(pmt)) {
114 y += frame->getRate(pmt) * 1e-3;
118 map_summary[frame->getModuleID()]->Fill(x, y);
124 for (JDAQSummaryslice::const_iterator frame = summaryslice->begin(); frame != summaryslice->end(); ++frame) {
127 y += frame->getRate(pmt) * 1e-3;
130 h1.Fill(x, (frame->testWhiteRabbitStatus() ? 1.0 : 0.0));
133 hn.Fill(x, summaryslice->size());
141 STATUS(
"event: " << setw(10) <<
in.getCounter() <<
'\r');
DEBUG(endl);
145 const Double_t x =
event->getFrameIndex();
154 map_trigger[hit->getModuleID()]->Fill(x);
159 map_summary.Write(out);
160 map_trigger.Write(out);
161 map_status .Write(out);
Utility class to parse command line options.
int getFrameIndex() const
Get frame index.
Auxiliary class for defining the range of iterations of objects.
Auxiliary class to manage set of compatible ROOT objects (e.g. histograms) using unique keys...
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
double getFrameTime()
Get frame time duration.
Auxiliary class to set-up Hit.
static const int NUMBER_OF_PMTS
Total number of PMTs in module.
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
#define DEBUG(A)
Message macros.