Jpp
17.3.1
the software that should make you happy
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
software
JSummaryslice
JSummaryWriter.cc
Go to the documentation of this file.
1
2
#include <string>
3
#include <iostream>
4
#include <iomanip>
5
6
#include "
JDAQ/JDAQSummarysliceIO.hh
"
7
#include "
JPhysics/JK40Rates.hh
"
8
#include "
JDetector/JDetector.hh
"
9
#include "
JDetector/JDetectorToolkit.hh
"
10
#include "
JDetector/JDetectorSimulator.hh
"
11
#include "
JDetector/JPMTParametersMap.hh
"
12
#include "
JDetector/JK40DefaultSimulator.hh
"
13
#include "
JDetector/JPMTDefaultSimulator.hh
"
14
#include "
JDetector/JCLBDefaultSimulator.hh
"
15
#include "
JTrigger/JTriggerParameters.hh
"
16
#include "
JSupport/JFileRecorder.hh
"
17
#include "
JSupport/JSupport.hh
"
18
#include "
JSupport/JMeta.hh
"
19
#include "
JSummaryslice/JSummaryslice.hh
"
20
21
#include "
Jeep/JParser.hh
"
22
#include "
Jeep/JMessage.hh
"
23
24
25
/**
26
* \file
27
*
28
* Auxiliary program to write summary data.
29
* \author mdejong
30
*/
31
int
main
(
int
argc,
char
**argv)
32
{
33
using namespace
std;
34
using namespace
JPP;
35
using namespace
KM3NETDAQ;
36
37
JFileRecorder<JTYPELIST<JDAQSummaryslice, JTriggerParameters, JMeta>::typelist
>
outputFile
;
38
int
numberOfEvents;
39
string
detectorFile;
40
JTriggerParameters
parameters
;
41
JPMTParametersMap
pmtParameters;
42
JK40Rates
rates_Hz;
43
int
run_number;
44
int
debug
;
45
46
try
{
47
48
JParser<>
zap(
"Auxiliary program to create summary data."
);
49
50
zap[
'n'
] =
make_field
(numberOfEvents);
51
zap[
'o'
] =
make_field
(
outputFile
);
52
zap[
'a'
] =
make_field
(detectorFile);
53
zap[
'@'
] =
make_field
(
parameters
) =
JPARSER::initialised
();
54
zap[
'P'
] =
make_field
(pmtParameters) =
JPARSER::initialised
();
55
zap[
'B'
] =
make_field
(rates_Hz) =
JPARSER::initialised
();
56
zap[
'R'
] =
make_field
(run_number) = 1;
57
zap[
'd'
] =
make_field
(
debug
) = 0;
58
59
zap(argc, argv);
60
}
61
catch
(
const
exception &error) {
62
FATAL
(error.what() << endl);
63
}
64
65
66
JDetector
detector
;
67
68
try
{
69
load
(detectorFile,
detector
);
70
}
71
catch
(
const
JException
& error) {
72
FATAL
(error);
73
}
74
75
JPMTParametersMap::Throw(
false
);
76
77
JDetectorSimulator
simbad(
detector
);
78
79
simbad.
reset
(
new
JPMTDefaultSimulator
(pmtParameters,
detector
));
80
simbad.
reset
(
new
JK40DefaultSimulator
(rates_Hz));
81
simbad.
reset
(
new
JCLBDefaultSimulator
());
82
83
outputFile
.open();
84
85
outputFile
.put(
JMeta
(argc, argv));
86
outputFile
.put(
parameters
);
87
88
for
(
int
frame_index = 1; frame_index <= numberOfEvents; ++frame_index) {
89
90
NOTICE
(
"event: "
<< setw(10) << frame_index <<
'\r'
);
DEBUG
(endl);
91
92
JSummaryslice
summary(
JDAQChronometer
(
detector
.getID(),
93
run_number,
94
frame_index,
95
getTimeOfFrame
(frame_index)),
96
simbad);
97
98
outputFile
.put(summary);
99
}
100
NOTICE
(endl);
101
102
outputFile
.close();
103
}
JSUPPORT::JMeta
Auxiliary class for ROOT I/O of application specific meta data.
Definition:
JMeta.hh:70
JSUPPORT::JFileRecorder
Object writing to file.
Definition:
JFileRecorder.hh:41
JPARSER::JParser
Utility class to parse command line options.
Definition:
JParser.hh:1517
JLANG::JException
General exception.
Definition:
JException.hh:23
main
int main(int argc, char *argv[])
Definition:
Main.cc:15
JSupport.hh
ROOT TTree parameter settings of various packages.
JDETECTOR::JK40DefaultSimulator
Default implementation of the simulation of K40 background.
Definition:
JK40DefaultSimulator.hh:30
JACOUSTICS::JTriggerParameters
Trigger parameters.
Definition:
JAcoustics/JTriggerParameters.hh:26
JDETECTOR::JDetectorSimulator
Detector simulation.
Definition:
JDetectorSimulator.hh:33
JDETECTOR::JDetector
Detector data structure.
Definition:
JDetector.hh:89
JDETECTOR::JCLBDefaultSimulator
Default CLB simulation.
Definition:
JCLBDefaultSimulator.hh:135
JFileRecorder.hh
Recording of objects on file according a format that follows from the file name extension.
JCLBDefaultSimulator.hh
parameters
*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
Definition:
diff-Tuna.sh:38
JPMTParametersMap.hh
JPARSER::initialised
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
Definition:
JParser.hh:83
outputFile
string outputFile
Definition:
JDAQTimesliceSelector.cc:37
JDetectorSimulator.hh
JDetector.hh
Data structure for detector geometry and calibration.
KM3NETDAQ::getTimeOfFrame
double getTimeOfFrame(const int frame_index)
Get start time of frame in ns since start of run for a given frame index.
Definition:
JDAQClock.hh:185
JAANET::detector
Detector file.
Definition:
JHead.hh:226
JSummaryslice.hh
Auxiliaries for creation of summary data.
make_field
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Definition:
JParser.hh:1993
JPMTDefaultSimulator.hh
JMeta.hh
ROOT I/O of application specific meta data.
KM3NETDAQ::JDAQChronometer
DAQ chronometer.
Definition:
JDAQChronometer.hh:21
NOTICE
#define NOTICE(A)
Definition:
JMessage.hh:64
KM3NETDAQ::JSummaryslice
Auxiliary class to create summary data.
Definition:
JSummaryslice.hh:36
JDAQSummarysliceIO.hh
JDETECTOR::JPMTParametersMap
Auxiliary class for map of PMT parameters.
Definition:
JPMTParametersMap.hh:89
JMessage.hh
General purpose messaging.
FATAL
#define FATAL(A)
Definition:
JMessage.hh:67
JDETECTOR::JDetectorSimulator::reset
void reset(JK40Simulator *k40Simulator)
Reset K40 simulator.
Definition:
JDetectorSimulator.hh:144
JDETECTOR::load
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
Definition:
JDetectorToolkit.hh:486
JDETECTOR::JPMTDefaultSimulator
Default PMT simulation.
Definition:
JPMTDefaultSimulator.hh:54
JK40Rates.hh
JParser.hh
Utility class to parse command line options.
JK40DefaultSimulator.hh
JDetectorToolkit.hh
detector
do set_variable DETECTOR_TXT $WORKDIR detector
Definition:
detector-XY:fit1d.sh:38
debug
int debug
debug level
Definition:
archive-put-wiki-detectors.sh:92
JPHYSICS::JK40Rates
Auxiliary class for K40 rates.
Definition:
JK40Rates.hh:41
JTriggerParameters.hh
DEBUG
#define DEBUG(A)
Message macros.
Definition:
JMessage.hh:62
Generated by
1.8.5