59{
63
65
67 JLimit_t& numberOfEvents = inputFile.getLimit();
68 string detectorFile;
72
73 try {
74
75 JParser<> zap(
"Example program to analyse track fit results from Evt formatted data.");
76
83
84 zap(argc, argv);
85 }
86 catch(const exception& error) {
87 FATAL(error.what() << endl);
88 }
89
90
92
93 if (detectorFile != "") {
94 try {
96 }
99 }
100 }
101
103
105
106 TH1D hx("hx", NULL, 100, -3.0, +2.3);
107 TH1D hd("hd", NULL, 100, 0.0, 10.0);
108 TH1D ht("ht", NULL, 100, -100.0, 100.0);
109 TH1D he("he", NULL, 100, -5.0, +5.0);
110 TH1D h1("h1", NULL, 100, -50.0, +50.0);
111
112
114
116
117 const Evt* evt = inputFile.
next();
118
119
121
123
125
127
129
132
134
138 he.Fill(log10(tb.
getE()/ta.
getE()));
139 }
140
141 for (vector<Hit>::const_iterator i = evt->
hits.begin(); i != evt->
hits.end(); ++i) {
142
143 if (router.hasModule(i->dom_id)) {
144
145 const JHitL0 hit = getHit(*i, router);
146
148 }
149 }
150 }
151 }
153
154 out.Write();
155 out.Close();
156}
#define DEBUG(A)
Message macros.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Router for direct addressing of module data in detector data structure.
double getIntersection(const JVector3D &pos) const
Get longitudinal position along axis of position of closest approach with given position.
const JPosition3D & getPosition() const
Get position.
double getT(const JVector3D &pos) const
Get arrival time of Cherenkov light at given position.
JTime & add(const JTime &value)
Addition operator.
JVersor3D getDirection(const JVector3D &pos) const
Get photon direction of Cherenkov light on PMT.
void move(const double step, const double velocity, const JGeane &geane)
Move vertex along this track with given velocity.
double getE() const
Get energy.
Utility class to parse command line options.
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.
Data structure for L0 hit.
double getT() const
Get calibrated time of hit.
JTrack3E getTrack(const Trk &track)
Get track.
bool has_muon(const Evt &evt)
Test whether given event has a muon.
const Trk & get_muon(const Evt &evt)
Get first muon from the event tracklist.
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
double getAngle(const JQuaternion3D &first, const JQuaternion3D &second)
Get space angle between quanternions.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
KM3NeT DAQ data structures and auxiliaries.
double getTimeSinceRTS(const int frame_index)
Get time in ns since last RTS for a given frame index.
The Evt class respresent a Monte Carlo (MC) event as well as an offline event.
double mc_t
MC: time where the mc-event was put in the timeslice, since start of run (offset+frameidx*timeslice_d...
std::vector< Hit > hits
list of hits
Type definition of range.
Auxiliary class for defining the range of iterations of objects.
static counter_type max()
Get maximum counter value.
std::string comment
use as you like