29 int main(
int argc,
char **argv)
33 using namespace KM3NETDAQ;
41 JParser<> zap(
"Example program to histogram trigger efficiency.");
49 catch(
const exception &error) {
50 FATAL(error.what() << endl);
58 TH1D h0(
"h0", NULL, 100, 0.5, 100.5);
59 TH1D h1(
"h1", NULL, 100, 0.5, 100.5);
60 TH1D h2(
"h2", NULL, 100, 0.5, 100.5);
65 while (inputFile.hasNext()) {
67 STATUS(
"event: " << setw(10) << inputFile.getCounter() <<
'\r');
DEBUG(endl);
71 const Evt*
event = ps;
73 const int n =
event->mc_hits.size() - count_if(event->mc_hits.begin(),
event->mc_hits.cend(), &
is_noise);
75 h1.Fill((Double_t) n, 1.0);
82 STATUS(
"event: " << setw(10) <<
in.getCounter() <<
'\r');
DEBUG(endl);
84 const Evt*
event =
in.next();
86 const int n =
event->mc_hits.size() - count_if(event->mc_hits.begin(),
event->mc_hits.cend(), &
is_noise);
88 h0.Fill((Double_t) n, 1.0);
93 for (Int_t
i = 1;
i <= h1.GetNbinsX(); ++
i) {
95 const Double_t y1 = h1.GetBinContent(
i);
96 const Double_t y0 = h0.GetBinContent(
i);
100 const Double_t y3 = y1 / y0;
101 const Double_t w3 = sqrt(y1 * (y0 - y1) / (y0*y0*y0));
103 h2.SetBinContent(
i, y3);
104 h2.SetBinError (
i, w3);
107 ERROR(
"Bin " << h0.GetName() <<
"[" <<
i <<
"] empty." << endl);
Utility class to parse command line options.
int main(int argc, char *argv[])
ROOT TTree parameter settings of various packages.
Synchronously read DAQ events and Monte Carlo events (and optionally other events).
Auxiliary class to synchronously read DAQ events and Monte Carlo events (and optionally other events)...
bool is_noise(const Hit &hit)
Verify hit origin.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
General purpose messaging.
General purpose class for object reading from a list of file names.
then fatal The output file must have the wildcard in the e g root fi 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
Utility class to parse command line options.
General purpose class for multiple pointers.
The Evt class respresent a Monte Carlo (MC) event as well as an offline event.
#define DEBUG(A)
Message macros.