8#include "JAAnet/JAAnetDictionary.hh"
61int main(
int argc,
char **argv) {
85 zap[
'f'] =
make_field(inputFile ,
"input file " );
87 zap[
'a'] =
make_field(detectorFile ,
"detector file" );
89 zap[
'L'] =
make_field(analysis_level ,
"analysis level") = 0, 1, 2;
93 catch(
const exception &error) {
94 ERROR(error.what() << endl);
103 FATAL(
"FATAL ERROR. Could not open detector file '" << detectorFile <<
"'." << endl);
106 if(analysis_level == 1){
107 cout <<
"ANALYSIS OF ALL AVAILABLE PMTs INFORMATION. It may take a while!" << endl;
108 }
else if (analysis_level == 2){
109 cout <<
"BASIC ANALYSIS AT TRIGGER AND RECONSTRUCTION LEVEL." << endl;
111 cout <<
"JRUNANALYZER RUNNING WITH A REDUCED NUMBER OF PLOTS." << endl;
120 }
catch(
const exception&){}
137 FATAL(
"WRONG FILE TYPE");
140 TFile* out = p->getFile();
142 cout << out->GetName() << endl;
170 JRunAnalyzer Analyzer (inputFile,
detector, out, numberOfTimeslices, numberOfSummaryslices, numberOfEvents, analysis_level);
172 cout <<
"read events\n";
174 cout <<
"read summarydata\n";
176 cout <<
"read timeslices\n";
183 if(analysis_level == 2){
184 cout <<
"read reconstructed events\n";
KM3NeT DAQ constants, bit handling, etc.
Data structure for detector geometry and calibration.
Recording of objects on file according a format that follows from the file name extension.
Direct access to module in detector data structure.
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
Utility class to parse parameter values.
#define gmake_property(A)
macros to convert (template) parameter to JPropertiesElement object
Auxiliary class to define a range between two values.
int main(int argc, char **argv)
ROOT TTree parameter settings of various packages.
JAANET::livetime livetime
void push(T JHead::*pd)
Push given data member to Head.
Utility class to parse parameter values.
Utility class to parse command line options.
Class dedicated to the analysis of KM3NeT runs.
void writeToFile(TFile *f, int analysis_level)
virtual bool hasNext() override
Check availability of next element.
virtual const pointer_type & next() override
Get next element.
Template definition for direct access of elements in ROOT TChain.
int getDetectorID() const
Get detector identifier.
int getRunNumber() const
Get run number.
void copy(const Head &from, JHead &to)
Copy header from from to to.
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
bool putObject(TDirectory &dir, const TObject &object)
Write object to ROOT directory.
double getLivetime(const std::string &file_name)
Get data taking live time.
Head getHeader(const JMultipleFileScanner_t &file_list)
Get Monte Carlo header.
KM3NeT DAQ data structures and auxiliaries.
The Head class reflects the header of Monte-Carlo event files, which consists of keys (also referred ...
double livetime_s
Live time [s].
double numberOfSeconds
Live time [s].
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
Auxiliary class for defining the range of iterations of objects.
static counter_type max()
Get maximum counter value.
Timeslice data structure for L0 data.
Timeslice data structure for L1 data.
Timeslice data structure for L2 data.
Timeslice data structure for SN data.