36 int main(
int argc,
char **argv)
45 JLimit_t& numberOfEvents = inputFile.getLimit();
56 JParser<> zap(
"Example program to histogram string and floor time difference.");
61 zap[
'n'] =
make_field(numberOfEvents) = JLimit::max();
62 zap[
'T'] =
make_field(T_ns,
"Time window for coincidences [ns]") =
JRange_t(-50.0, +200.0);
63 zap[
'W'] =
make_field(Wmin,
"Minimal number of entries") = 10.0;
64 zap[
'q'] =
make_field(Qmin,
"Minimal fraction of coincidences") = 0.5;
70 catch(
const exception& error) {
71 FATAL(error.what() << endl);
100 if (buffer.size() >= 2u) {
102 if (p->first.getString() == q->first.getString() && p->first.getFloor() + 1 == q->first.getFloor()) {
103 H1[p->first]->Fill(q->second.getMean() - p->second.getMean());
122 for (
const auto& i : H1) {
128 if (h1->GetSumOfWeights() > Wmin) {
130 for (Int_t ix = 1; ix <= h1->GetXaxis()->GetNbins(); ++ix) {
132 const Double_t
x = h1->GetBinCenter (ix);
133 const Double_t
y = h1->GetBinContent(ix);
140 DEBUG(i.first <<
' ' <<
FIXED(6,0) << W <<
'/' <<
FIXED(6,0) << h1->GetSumOfWeights() << endl);
142 if (W / h1->GetSumOfWeights() >= Qmin)
149 NOTICE(
"Number of modules out/in micro-sync " << nout <<
'/' << nin << endl);
151 QAQC(nin <<
' ' << nout << endl);
Direct access to PMT data in detector data structure for DAQ hits.
Data structure for detector geometry and calibration.
Dynamic ROOT object management.
General purpose messaging.
#define DEBUG(A)
Message macros.
#define QAQC(A)
QA/QC output macro.
int qaqc
QA/QC file descriptor.
Scanning of objects from multiple files according a format that follows from the extension of each fi...
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Auxiliary class to define a range between two values.
int main(int argc, char **argv)
ROOT TTree parameter settings of various packages.
Simple wrapper around JModuleRouter class for direct addressing of PMT data in detector data structur...
const JModule & getModule(const JDAQKeyHit &hit) const
Get module parameters.
const JPMT & getPMT(const JDAQKeyHit &hit) const
Get PMT parameters.
double getZ() const
Get z position.
Utility class to parse command line options.
Auxiliary class to manage set of compatible ROOT objects (e.g. histograms) using unique keys.
void Write(TDirectory &out, const bool wm=false)
Write objects to file.
General purpose class for object reading from a list of file names.
virtual bool hasNext() override
Check availability of next element.
counter_type getCounter() const
Get counter.
virtual const pointer_type & next() override
Get next element.
double getTime(const Hit &hit)
Get true time of hit.
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
const double getInverseSpeedOfLight()
Get inverse speed of light.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
KM3NeT DAQ data structures and auxiliaries.
Auxiliary data structure for floating point format specification.
Type definition of range.
Auxiliary class for defining the range of iterations of objects.