42 JParser<> zap(
"Auxiliary program to project single PMT data from 2D histogram.");
44 zap[
'a'] =
make_field(detectorFile,
"detector file.");
45 zap[
'f'] =
make_field(inputFile,
"input file.");
53 catch(
const exception &error) {
54 FATAL(error.what() << endl);
58 gErrorIgnoreLevel = kError;
66 catch(
const JException& error) {
70 const JModuleRouter router(
detector);
72 const JModule& module = router.getModule(pmt.getModuleID());
74 JCombinatorics combinatorics;
76 combinatorics.configure(module.size());
78 combinatorics.sort(JPairwiseComparator(module));
80 TFile
in(inputFile.c_str(),
"read");
82 TH2D* h2 = (TH2D*)
in.Get(
MAKE_CSTRING(pmt.getModuleID() << extension));
85 FATAL(
"Missing histogram for module " << pmt.getModuleID() << endl);
88 TH1D h1(
MAKE_CSTRING(pmt.getModuleID() <<
'.' <<
FILL(2,
'0') << pmt.getTDC()), NULL, h2->GetYaxis()->GetNbins(), h2->GetYaxis()->GetXmin(), h2->GetYaxis()->GetXmax());
90 for (
size_t i = 0;
i != module.size(); ++
i) {
92 const Int_t ix = combinatorics.getIndex(pmt.getTDC(),
i) + 1;
94 for (Int_t iy = 1; iy <= h2->GetYaxis()->GetNbins(); ++iy) {
95 h1.SetBinContent(iy, h2->GetBinContent(ix,iy));
96 h1.SetBinError (iy, h2->GetBinError (ix,iy));
Utility class to parse command line options.
#define MAKE_CSTRING(A)
Make C-string.
static const char *const _2F
Name extension for 2F rate fitted.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
static const char *const _2R
Name extension for 2D rate measured.
Auxiliary data structure for sequence of same character.
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
do set_variable DETECTOR_TXT $WORKDIR detector
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
static const char *const _2S
Name extension for 2D counts.