Jpp  master_rocky-43-ge265d140c
the software that should make you happy
JTreeRecorder.cc
Go to the documentation of this file.
1 #include <string>
2 #include <iostream>
3 #include <iomanip>
4 #include <limits>
5 
6 #include "JDAQ/JDAQEventIO.hh"
9 
12 #include "JSupport/JSupport.hh"
13 
14 #include "Jeep/JParser.hh"
15 #include "Jeep/JMessage.hh"
16 
17 
18 /**
19  * \file
20  *
21  * Program to test ordered reading using JSUPPORT::JTreeRecorder.
22  * \author mdejong
23  */
24 int main(int argc, char **argv)
25 {
26  using namespace std;
27  using namespace JPP;
28  using namespace KM3NETDAQ;
29 
31  JLimit_t& numberOfEvents = inputFile.getLimit();
32  string outputFile;
33  Long64_t size;
34  int debug;
35 
36  try {
37 
38  JParser<> zap("Program to test TTree recording with circular buffer.");
39 
40  zap['f'] = make_field(inputFile);
41  zap['n'] = make_field(numberOfEvents) = JLimit::max();
42  zap['o'] = make_field(outputFile);
43  zap['c'] = make_field(size, "circular buffer size") = 0;
44  zap['d'] = make_field(debug) = 2;
45 
46  zap(argc, argv);
47  }
48  catch(const exception& error) {
49  FATAL(error.what() << endl);
50  }
51 
53 
54  if (size > 0) {
55  out.SetCircular(size);
56  }
57 
58  inputFile >> out;
59 
60  out.close();
61 }
string outputFile
General purpose messaging.
#define FATAL(A)
Definition: JMessage.hh:67
int debug
debug level
Definition: JSirene.cc:69
Scanning of objects from multiple files according a format that follows from the extension of each fi...
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Definition: JParser.hh:2142
ROOT TTree parameter settings of various packages.
int main(int argc, char **argv)
Utility class to parse command line options.
Definition: JParser.hh:1698
void SetCircular(Long64_t size)
Set circular buffer size.
General purpose class for object reading from a list of file names.
ROOT TTree object output.
virtual void close() override
Close file.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
KM3NeT DAQ data structures and auxiliaries.
Definition: DataQueue.cc:39
Definition: JSTDTypes.hh:14
Auxiliary class for defining the range of iterations of objects.
Definition: JLimit.hh:45