36 inline void print(std::ostream& out, 
const char* 
const title, T __begin, T __end)
 
   42   for (T i = __begin; i != __end; ++i) {
 
   43     out << 
' ' << setw(4) << (int) i->getT();
 
   56 int main(
int argc, 
char **argv)
 
   69     JParser<> zap(
"Example program to test hit pre-processing with user data."\
 
   70                   "\nformat: -u \"(<PMT> <time> <time-over-threshold>)+\"");
 
   74     zap[
'O'] = 
make_field(option)      = JPreprocessor::getOptions();
 
   79   catch(
const exception &error) {
 
   80     FATAL(error.what() << endl);
 
   95   detector.push_back(module);
 
   97   const JModuleRouter router(detector);
 
   99   JHit::setSlewing(
false);
 
  105   frame.
add(data.size(), data.data());
 
  107   timeslice.push_back(frame);
 
  112     typedef JSuperFrame2D<JHit> JSuperFrame2D_t;
 
  114     JSuperFrame2D_t& buffer = JSuperFrame2D_t::demultiplex(timeslice[0], module);
 
  116     buffer.preprocess(option, JMatchL0<JHit>(Tmax_ns));
 
  118     JBuildL0<JHitR0> buildL0;
 
  121     buildL0(buffer, back_inserter(output));
 
  123     print(cout, 
"L0:", output.begin(), output.end());
 
  127     JBuildL0<JHitL0> buildL0;
 
  130     buildL0.setPreprocessor(option, JMatchL0<JHit>(Tmax_ns));
 
  132     buildL0(timeslice, router, back_inserter(output));
 
  134     print(cout, 
"L0:", output.begin(), output.end());
 
  137     JBuildL1<JHitR1> buildL1(JBuildL1Parameters(Tmax_ns, 
true));
 
  140     buildL1.setPreprocessor(option, JMatchL0<JHit>(Tmax_ns));
 
  142     buildL1(timeslice, router, back_inserter(output)); 
 
  144     print(cout, 
"L1:", output.begin(), output.end());
 
  147     JBuildL2<JHitR2> buildL2(JL2Parameters(2, Tmax_ns, -1.0));
 
  150     buildL2.setPreprocessor(option, JMatchL0<JHit>(Tmax_ns));
 
  152     buildL2(timeslice, router, back_inserter(output)); 
 
  154     print(cout, 
"L2:", output.begin(), output.end());