33 int main(
int argc,
char **argv)
37 using namespace KM3NETDAQ;
41 JTriggeredFileScanner<> inputFile;
48 JParser<> zap(
"Auxiliary program to store Monte Carlo true muon in format for subsequent fits.");
52 zap[
'n'] =
make_field(numberOfEvents) = JLimit::max();
57 catch(
const exception& error) {
58 FATAL(error.what() << endl);
63 const JVector3D center = get<JPosition3D>(
getHeader(inputFile));
69 while (inputFile.hasNext()) {
71 STATUS(
"event: " << setw(10) << inputFile.getCounter() <<
'\r');
DEBUG(endl);
73 JTriggeredFileScanner<>::multi_pointer_type ps = inputFile.next();
76 const Evt*
event = ps;
79 const JTimeConverter converter(*
event, *tev);
83 if (muon !=
event->mc_trks.end()) {
88 ta.add(converter.putTime());
93 out.rbegin()->setW(0, (
get_neutrino(*event).pos - muon->pos).len());
101 JMultipleFileScanner<JRemove<typelist, JEvt>::typelist> io(inputFile);
Utility class to parse command line options.
JTrack3E getTrack(const Trk &track)
Get track.
Synchronously read DAQ events and Monte Carlo events (and optionally other events).
bool has_neutrino(const Evt &evt)
Test whether given event has an incoming neutrino.
bool is_muon(const Trk &track)
Test whether given track is a (anti-)muon.
Recording of objects on file according a format that follows from the file name extension.
Structure to store the ToT mean and standard deviation of the hits produced by a nanobeacon in a sour...
JFit getFit(const JHistory &history, const JTrack3D &track, const double Q, const int NDF, const double energy=0.0, const int status=0)
Get fit.
Head getHeader(const JMultipleFileScanner_t &file_list)
Get Monte Carlo header.
JLimit JLimit_t
Type definition of limit.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
General purpose messaging.
Utility class to parse command line options.
ROOT TTree parameter settings.
const JLimit & getLimit() const
Get limit.
const Trk & get_neutrino(const Evt &evt)
Get incoming neutrino.
#define DEBUG(A)
Message macros.
int main(int argc, char *argv[])