Auxiliary program to convert data to Dusj format.
48 using namespace KM3NETDAQ;
58 JParser<> zap(
"Auxiliary program to convert data to Dusj format.");
63 zap[
'n'] =
make_field(numberOfEvents) = JLimit::max();
68 catch(
const exception& error) {
69 FATAL(error.what() << endl);
99 center = get<Vec>(buffer);
100 mc_run_id = buffer.start_run.run_id;
102 }
catch(
const exception& error) {
104 JHead buffer(header);
106 buffer.start_run.run_id = getRunNumber<JDAQSummaryslice>(inputFile);
107 buffer.push(&JHead::start_run);
109 copy(buffer, header);
112 JHead buffer(header);
117 copy(buffer, header);
125 STATUS(
"event: " << setw(10) << inputFile.getCounter() <<
'\r');
DEBUG(endl);
131 if (mc.getEntries() != 0) {
150 out.
mc_id = inputFile.getCounter();
160 const JModule& module = router.getModule(i->getModuleID());
161 const JPMT& pmt = module.
getPMT (i->getPMT());
165 hit.
id = out.
hits.size() + 1;
166 hit.
dom_id = i->getModuleID();
176 out.
hits.push_back(hit);
181 double t0 = numeric_limits<double>::max();
193 if (out.
mc_t > 0.0 && t0 != numeric_limits<double>::max()) {
197 out.
id = inputFile.getCounter();
Utility class to parse command line options.
Data structure for a composite optical module.
bool read(Vec &v, std::istream &is)
Read a Vec(tor) from a stream.
Router for direct addressing of module data in detector data structure.
int pmt_id
global PMT identifier as found in evt files
int getRunNumber() const
Get run number.
Head getHeader(const JMultipleFileScanner_t &file_list)
Get Monte Carlo header.
Auxiliary class for defining the range of iterations of objects.
const_iterator< T > end() const
Get end of data.
double a
hit amplitude (in p.e.)
The Vec class is a straightforward 3-d vector, which also works in pyroot.
int mc_run_id
MC run identifier.
const_iterator< T > begin() const
Get begin of data.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
int mc_id
identifier of the MC event (as found in ascii or antcc file).
int getID() const
Get identifier.
Data structure for PMT geometry, calibration and status.
const JPMT & getPMT(const int index) const
Get PMT.
double mc_t
MC: time where the mc-event was put in the timeslice, since start of run (offset+frameidx*timeslice_d...
The Head class reflects the header of Monte-Carlo event files, which consists of keys (also referred ...
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
double getLivetime(const std::string &file_name)
Get data taking live time.
double t
hit time (from tdc+calibration or MC truth)
int dom_id
module identifier from the data (unique in the detector).
then usage $script< input_file >< detector_file > fi set_variable OUTPUT_DIR set_variable SELECTOR JDAQTimesliceL1 set_variable DEBUG case set_variable DEBUG
void copy(const Head &from, JHead &to)
Copy header from from to to.
int id
offline event identifier
Object reading from a list of files.
const JLimit & getLimit() const
Get limit.
std::vector< Hit > hits
list of hits
do set_variable DETECTOR_TXT $WORKDIR detector
JTriggerCounter_t getCounter() const
Get trigger counter.
std::vector< Trk > mc_trks
MC: list of MC truth tracks.
JTriggerCounter_t next()
Increment trigger counter.
The Evt class respresent a Monte Carlo (MC) event as well as an offline event.