100   Long64_t               numberOfEvents;
 
  102   JK40DefaultSimulator_t k40Simulator;
 
  109     JParser<> zap(
"Example program to test hit coincidence building with random data.");
 
  121   catch(
const exception &error) {
 
  122     FATAL(error.what() << endl);
 
  125   gRandom->SetSeed(seed);
 
  132   detector.push_back(getModule<JKM3NeT_t>(1001));
 
  138   simbad.reset(k40Simulator.clone());
 
  143   TProfile hn(
"hn", NULL, 31,  0.5,  +31.5);
 
  144   TProfile hc(
"hc", NULL, 21, -1.05, +1.05);
 
  145   TProfile ht(
"ht", NULL, 20,  0.5,  +20.5);
 
  157   JSuperFrame2D_t  buffer;
 
  160   for (
int event_count = 0; event_count < numberOfEvents; ++event_count) {
 
  162     STATUS(
"event: " << setw(10) << event_count << 
'\r'); 
DEBUG(endl);
 
  164     const int frame_index = 1;
 
  170     for (JDAQTimeslice::const_iterator super_frame = timeslice.begin(); super_frame != timeslice.end(); ++super_frame) {
 
  172       if (moduleRouter.hasModule(super_frame->getModuleID())) {
 
  176         const JModule& module = 
detector.getModule(moduleRouter.getAddress(super_frame->getModuleID()));
 
  178         buffer(*super_frame, module);
 
  182         buildL1(buffer, back_inserter(dataL1));
 
  185         if (!dataL1.empty()) {
 
  189           JFrameL1_t d1(dataL1);
 
  192           for (
int i = 1; i <= hn.GetNbinsX(); ++i) {
 
  194             buildL2.numberOfHits = (int) hn.GetBinCenter(i);
 
  198             buildL2(buffer, d1, back_inserter(d2));
 
  200             hn.Fill((
double) buildL2.numberOfHits, (
double) d2.size() / (
double) dataL1.size());
 
  207         if (!dataL1.empty()) {
 
  211           JFrameL1_t d1(dataL1);
 
  214           for (
int i = 1; i <= hc.GetNbinsX(); ++i) {
 
  216             buildL2.ctMin = hc.GetBinCenter(i);
 
  220             buildL2(buffer, d1, back_inserter(d2));
 
  222             hc.Fill(buildL2.ctMin, (
double) d2.size() / (
double) dataL1.size());
 
  229         if (!dataL1.empty()) {
 
  233           JFrameL1_t d1(dataL1);
 
  236           for (
int i = ht.GetNbinsX(); i != 0; --i) {
 
  238             buildL2.TMaxLocal_ns = ht.GetBinCenter(i);
 
  242             buildL2(buffer, d1, back_inserter(d2));
 
  244             ht.Fill(buildL2.TMaxLocal_ns, (
double) d2.size() / (
double) dataL1.size());
 
#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.
 
Data structure for a composite optical module.
 
Auxiliary class for map of PMT parameters.
 
Utility class to parse command line options.
 
2-dimensional frame with time calibrated data from one optical module.
 
Data structure for UTC time.
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
 
KM3NeT DAQ data structures and auxiliaries.
 
double getTimeOfFrame(const int frame_index)
Get start time of frame in ns since start of run for a given frame index.
 
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
 
Auxiliary data structure for L1 build parameters.
 
Data structure for L2 parameters.
 
Timeslice with random data.