Jpp
JQuality.cc
Go to the documentation of this file.
1 #include <string>
2 #include <iostream>
3 #include <iomanip>
4 
5 #include "JTools/JWeight.hh"
7 #include "JSupport/JSupport.hh"
8 #include "JFit/JEvt.hh"
9 
10 #include "Jeep/JParser.hh"
11 #include "Jeep/JMessage.hh"
12 
13 
14 /**
15  * \file
16  *
17  * Auxiliary program to sum fit quality.
18  */
19 int main(int argc, char **argv)
20 {
21  using namespace std;
22  using namespace JPP;
23 
24  JMultipleFileScanner<JEvt> inputFile;
25  JLimit_t& numberOfEvents = inputFile.getLimit();
26  int debug;
27 
28  try {
29 
30  JParser<> zap("Auxiliary program to sum fit quality.");
31 
32  zap['f'] = make_field(inputFile);
33  zap['n'] = make_field(numberOfEvents) = JLimit::max();
34  zap['d'] = make_field(debug) = 2;
35 
36  zap(argc, argv);
37  }
38  catch(const exception& error) {
39  FATAL(error.what() << endl);
40  }
41 
42  JWeight W("Quality");
43 
44  while (inputFile.hasNext()) {
45 
46  STATUS("event: " << setw(10) << inputFile.getCounter() << '\r'); DEBUG(endl);
47 
48  const JEvt* evt = inputFile.next();
49 
50  if (!evt->empty()) {
51  if (evt->begin()->getQ() >= 0.0) {
52  W.put(evt->begin()->getQ());
53  }
54  }
55  }
56  STATUS(endl);
57 
58  cout << "Total quality " << FIXED(12,1) << W.getTotal() << ' ' << FIXED(12,1) << W.getError()<< endl;
59 }
FIXED
Auxiliary data structure for floating point format specification.
Definition: JPrint.hh:481
JMessage.hh
JSUPPORT::JLimit_t
JLimit JLimit_t
Type definition of limit.
Definition: JLimit.hh:215
JPARSER::JParser
Utility class to parse command line options.
Definition: JParser.hh:1493
JSupport.hh
JPP
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Definition: JAAnetToolkit.hh:37
JEvt.hh
debug
int debug
debug level
Definition: JSirene.cc:59
JSUPPORT::JLimit::getLimit
const JLimit & getLimit() const
Get limit.
Definition: JLimit.hh:73
JMultipleFileScanner.hh
STATUS
#define STATUS(A)
Definition: JMessage.hh:63
JParser.hh
main
int main(int argc, char **argv)
Definition: JQuality.cc:19
make_field
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Definition: JParser.hh:1954
JWeight.hh
DEBUG
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62
std
Definition: jaanetDictionary.h:36
FATAL
#define FATAL(A)
Definition: JMessage.hh:67