-
Notifications
You must be signed in to change notification settings - Fork 1
/
HistMuCapAnalysisChannels.h
98 lines (76 loc) · 2.5 KB
/
HistMuCapAnalysisChannels.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
// Andrei Gaponenko, 2014
#ifndef HistMuCapAnalysisChannels_h
#define HistMuCapAnalysisChannels_h
#include <string>
#include "WireCluster.h"
#include "HistMuCapContainedChannel.h"
#include "HistMuCapUncontainedChannel.h"
//nohitb: #include "HistMuCapHitbasedChannel.h"
#include "HistTDCBCSWidth.h"
#include "HistMuCapTruth.h"
#include "HistMuCapTrkResolution.h"
class TH1;
class TH2;
class TH3;
class HistogramFactory;
class ConfigFile;
class DetectorGeo;
class EventClass;
//================================================================
class HistMuCapAnalysisChannels {
public:
void init(HistogramFactory& hf,
const std::string& htopdir,
const std::string& channelsetname,
const DetectorGeo& geom,
const ConfigFile& conf);
// Must be called for all events. Must be called before fill() on the same event.
void fillReferenceSample(const EventClass& evt);
bool referenceSampleAccepted() const { return referenceSampleAccepted_; }
void fill(const EventClass& evt,
int iPosTrack,
int iNegTrack,
const ClustersByPlane& globalPlaneClusters);
HistMuCapAnalysisChannels()
: doMCTruth_(false)
, targetCenterZ_(0.)
, targetThickness_(0.)
, referenceSample_nrun_(0)
, referenceSample_nevt_(0)
{}
private :
bool doMCTruth_;
double targetCenterZ_;
double targetThickness_;
int referenceSample_nrun_;
int referenceSample_nevt_;
bool referenceSampleAccepted_;
TH1* refsample_in_zstop_;
TH1* refsample_accepted_count_;
//----------------------------------------------------------------
// Essential "channel" analysis histograms
HistMuCapContainedChannel contained_;
HistMuCapUncontainedChannel uncontained_;
//nohitb: HistMuCapHitbasedChannel hitbased_;
// Reference sample spectrum: common for all reco channels
// Essential for normalization of the unfolding
TH1* mcin_proton_ptot_;
TH1* mcin_deuteron_ptot_;
TH1* mcin_triton_ptot_;
TH1* mcin_alpha_ptot_;
TH1* mcin_dio_count_;
//----------------
// Extra distributions
bool fillExtras_TDC_;
HistTDCBCSWidth hTDCWidthContained_;
HistTDCBCSWidth hTDCWidthUncontained_;
//nohitb: HistTDCBCSWidth hTDCWidthHitbased_;
HistTDCBCSWidth hTDCWidthNone_;
HistMuCapTruth hTruthContained_;
HistMuCapTruth hTruthUncontained_;
//nohitb: HistMuCapTruth hTruthHitbased_;
HistMuCapTruth hTruthNone_;
HistMuCapTrkResolution hResolutionContained_;
HistMuCapTrkResolution hResolutionUncontained_;
};
#endif/*HistMuCapAnalysisChannels_h*/