64   using namespace KM3NETDAQ;
 
   73   bool                reuse_parameters;
 
   80     JParser<> zap(
"Auxiliary program to re-trigger event data.");
 
   82     zap[
'f'] = 
make_field(inputFile,        
"input file.");
 
   84     zap[
'n'] = 
make_field(numberOfEvents)      = JLimit::max();
 
   85     zap[
'a'] = 
make_field(detectorFile,     
"detector file.");
 
   87     zap[
'U'] = 
make_field(reuse_parameters, 
"reuse trigger parameters from input file.");
 
   88     zap[
'S'] = 
make_field(snapshot,         
"use snapshot hits instead of triggered hits.");
 
   94   catch(
const exception &error) {
 
   95     FATAL(error.what() << endl);
 
  112   if (reuse_parameters) {
 
  118       NOTICE(
"Set trigger parameters from input." << endl);
 
  121       FATAL(
"No trigger parameters from input." << endl);
 
  130   DEBUG(
"Reset time [ms] " << 
getRTS()       * 1e-6 << endl);
 
  135   if (
parameters.writeSummary()) { 
WARNING(
"Discard writeSummary option during reprocesing of data." << endl); }
 
  136   if (
parameters.writeL1())      { 
WARNING(
"Discard writeL1 option during reprocesing of data."      << endl); }
 
  137   if (
parameters.writeL2())      { 
WARNING(
"Discard writeL2 option during reprocesing of data."      << endl); }
 
  138   if (
parameters.writeSN())      { 
WARNING(
"Discard writeSN option during reprocesing of data."      << endl); }
 
  177   if (scan.getEntries() == 0) {
 
  178     FATAL(
"No summary data." << endl);
 
  181   while (inputFile.hasNext()) {
 
  183     STATUS(
"event: " << setw(10) << inputFile.getCounter() << 
'\r'); 
DEBUG(endl);
 
  186     Long64_t          index   = scan.find(*evt);
 
  195     DEBUG(timeslice << endl);
 
  197     timesliceRouter.configure(timeslice);
 
  200     JTimeslice_t    timesliceL0(timeslice.getDAQChronometer());
 
  201     JTimeslice_t    timesliceL1(timeslice.getDAQChronometer());
 
  202     JTimeslice_t    timesliceL2(timeslice.getDAQChronometer());
 
  203     JTimeslice_t    timesliceSN(timeslice.getDAQChronometer());
 
  204     JTimeslice_t    timesliceNB(timeslice.getDAQChronometer());
 
  206     for (JDAQTimeslice::const_iterator super_frame = timeslice.begin(); super_frame != timeslice.end(); ++super_frame) {
 
  208       if (moduleRouter.hasModule(super_frame->getModuleID())) {
 
  212         const JModule&   module = moduleRouter.getModule(super_frame->getModuleID()); 
 
  213         JSuperFrame2D_t& buffer = JSuperFrame2D_t::demultiplex(*super_frame, module);
 
  217         buffer.applyHighRateVeto(
parameters.highRateVeto_Hz);
 
  221         timesliceL0.push_back(JSuperFrame1D_t(buffer));
 
  227           JSuperFrame2D_t::iterator __end = partition(buffer.begin(), buffer.end(), 
parameters.triggerNB.pmts);
 
  229           if (buffer.begin() != __end) {
 
  231             timesliceNB.push_back(JSuperFrame1D_t(super_frame->getDAQChronometer(),
 
  232                                                   super_frame->getModuleIdentifier(),
 
  236             JSuperFrame1D_t zbuf;
 
  238             buildL1(buffer.begin(), __end , back_inserter(zbuf));
 
  241             buildNB(buffer.begin() , __end, zbuf, back_inserter(*timesliceNB.rbegin()));
 
  247         timesliceL1.push_back(JSuperFrame1D_t(super_frame->getDAQChronometer(),
 
  248                                               super_frame->getModuleIdentifier(),
 
  251         buildL1(*timesliceL0.rbegin(), back_inserter(*timesliceL1.rbegin()));
 
  255         timesliceL2.push_back(JSuperFrame1D_t(super_frame->getDAQChronometer(),
 
  256                                               super_frame->getModuleIdentifier(),
 
  259         buildL2(buffer, *timesliceL1.rbegin(), back_inserter(*timesliceL2.rbegin()));
 
  263         timesliceSN.push_back(JSuperFrame1D_t(super_frame->getDAQChronometer(),
 
  264                                               super_frame->getModuleIdentifier(),
 
  267         buildSN(buffer, *timesliceL1.rbegin(), back_inserter(*timesliceSN.rbegin()));
 
  278       for (JTriggerInput::const_iterator hit = trigger_input.begin(); hit != trigger_input.end(); ++hit) {
 
  299     trigger3DMuon  (trigger_input, back_inserter(trigger_output));
 
  300     trigger3DShower(trigger_input, back_inserter(trigger_output));
 
  301     triggerMXShower(trigger_input, timesliceL0, back_inserter(trigger_output));
 
  305     DEBUG(
"Number of triggers: " << trigger_output.size() << endl);
 
  307     for (JTriggerOutput::const_iterator event = trigger_output.begin(); 
event != trigger_output.end(); ++event) {
 
Utility class to parse command line options. 
 
JTriggerMask_t getTriggerMask(const unsigned int bit)
Convert trigger bit to trigger mask. 
 
Data structure for a composite optical module. 
 
Router for fast addressing of hits in KM3NETDAQ::JDAQTimeslice data structure as a function of the op...
 
Router for direct addressing of module data in detector data structure. 
 
Auxiliary class for ROOT class selection. 
 
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
 
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
 
Template definition for direct access of elements in ROOT TChain. 
 
Auxiliary class for selection of data type. 
 
int getFrameIndex() const 
Get frame index. 
 
1-dimensional frame with time calibrated data from one optical module. 
 
JTimeRange getTimeRange(const Evt &event)
Get time range (i.e. time between earliest and latest hit) of Monte Carlo event. 
 
void setDAQLongprint(const bool option)
Set DAQ print option. 
 
Auxiliary class for defining the range of iterations of objects. 
 
double getMaximalDistance(const JDetector &detector)
Get maximal distance between modules in detector. 
 
void merge(const JMatch_t &match)
Merge events. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
double getFrameTime()
Get frame time duration. 
 
Auxiliary class to build JDAQEvent for a triggered event. 
 
const JPosition3D & getPosition() const 
Get position. 
 
void load(const std::string &file_name, JDetector &detector)
Load detector from input file. 
 
double getRTS()
Get TDC dynamic range. 
 
then usage $script< input_file >< detector_file > fi set_variable OUTPUT_DIR set_variable SELECTOR JDAQTimesliceL1 set_variable DEBUG case set_variable DEBUG
 
2-dimensional frame with time calibrated data from one optical module. 
 
Object reading from a list of files. 
 
const JLimit & getLimit() const 
Get limit. 
 
do set_variable DETECTOR_TXT $WORKDIR detector
 
Match of two events considering overlap in time. 
 
JTriggerCounter_t getCounter() const 
Get trigger counter. 
 
JTriggerParameters getTriggerParameters(const JMultipleFileScanner_t &file_list)
Get trigger parameters. 
 
JTriggerCounter_t next()
Increment trigger counter. 
 
Time slice with calibrated data.