Jpp
18.0.0
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
examples
JDetector
JModuleMapper.cc
Go to the documentation of this file.
1
2
#include <string>
3
#include <iostream>
4
#include <iomanip>
5
6
#include "TROOT.h"
7
#include "TFile.h"
8
#include "TProfile.h"
9
10
#include "
JDetector/JDetector.hh
"
11
#include "
JDetector/JDetectorToolkit.hh
"
12
#include "
JDetector/JModuleMapper.hh
"
13
14
#include "
Jeep/JParser.hh
"
15
#include "
Jeep/JMessage.hh
"
16
17
18
/**
19
* \file
20
*
21
* Example program to test JDETECTOR::JModuleMapper.
22
* \author mdejong
23
*/
24
int
main
(
int
argc,
char
**argv)
25
{
26
using namespace
std;
27
28
string
outputFile
;
29
string
detectorFile;
30
int
debug
;
31
32
try
{
33
34
JParser<>
zap(
"Example program to test module mapping."
);
35
36
zap[
'o'
] =
make_field
(
outputFile
) =
"mapper.root"
;
37
zap[
'a'
] =
make_field
(detectorFile);
38
zap[
'd'
] =
make_field
(
debug
) = 1;
39
40
zap(argc, argv);
41
}
42
catch
(
const
exception& error) {
43
FATAL
(error.what() << endl);
44
}
45
46
47
using namespace
JPP;
48
49
50
JDetector
detector
;
51
52
try
{
53
load
(detectorFile,
detector
);
54
}
55
catch
(
const
JException& error) {
56
FATAL
(error);
57
}
58
59
60
TFile out(
outputFile
.c_str(),
"recreate"
);
61
62
TProfile h1(
"h1"
, NULL, 1001,-0.5, 1000.5);
63
64
JModuleMapper<> mapper(
detector
);
65
66
for
(
int
i
= 1;
i
<= h1.GetNbinsX(); ++
i
) {
67
68
const
double
x
= h1.GetBinCenter(
i
);
69
70
mapper.configure(JMaximalDistance(x));
71
72
for
(JDetector::const_iterator module =
detector
.begin(); module !=
detector
.end(); ++module) {
73
h1.Fill(x, (Double_t) mapper.getList(*module).size());
74
}
75
}
76
77
out.Write();
78
out.Close();
79
}
JPARSER::JParser
Utility class to parse command line options.
Definition:
JParser.hh:1514
i
then rm i
Definition:
JEvtReweightGSeaGenParameterScan.sh:337
main
int main(int argc, char *argv[])
Definition:
Main.cc:15
outputFile
string outputFile
Definition:
JDAQTimesliceSelector.cc:37
JDetector.hh
Data structure for detector geometry and calibration.
makedeclinationtable.x
tuple x
Definition:
makedeclinationtable.py:44
make_field
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Definition:
JParser.hh:1989
JMessage.hh
General purpose messaging.
FATAL
#define FATAL(A)
Definition:
JMessage.hh:67
JDETECTOR::load
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
Definition:
JDetectorToolkit.hh:485
JParser.hh
Utility class to parse command line options.
JModuleMapper.hh
Map of associated modules in detector.
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
Generated by
1.8.5