CMS 3D CMS Logo

dEdxAnalyzer.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 //
7 // Original Author: Loic Quertenmont 2012/07/25
8 
9 #include <memory>
10 #include <fstream>
11 
16 
20 
22 
25 
29 
31 
33 
34 class dEdxAnalyzer : public DQMEDAnalyzer {
35 public:
36  explicit dEdxAnalyzer(const edm::ParameterSet&);
37  ~dEdxAnalyzer() override;
38 
39  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
40 
41  void analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) override;
42  double mass(double P, double I);
43 
44  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
45 
46 private:
47  // ----------member data ---------------------------
51 
54 
55  struct dEdxMEs {
63 
65  : ME_MipDeDx(nullptr),
66  ME_MipDeDxNHits(nullptr),
67  ME_MipDeDxNSatHits(nullptr),
68  ME_MipDeDxMass(nullptr),
69  ME_HipDeDxMass(nullptr),
70  ME_MipHighPtDeDx(nullptr),
71  ME_MipHighPtDeDxNHits(nullptr) {}
72  };
73 
75  double dEdxK, dEdxC;
76 
79 
80  std::vector<std::string> dEdxInputList_;
81  std::vector<edm::EDGetTokenT<reco::DeDxDataValueMap> > dEdxTokenList_;
82 
84  std::vector<std::string> AlgoNames;
85  std::vector<dEdxMEs> dEdxMEsVector;
86  std::string histname; //for naming the histograms according to algorithm used
87 
89 };
dEdxAnalyzer::fullconf_
edm::ParameterSet fullconf_
Definition: dEdxAnalyzer.h:49
dEdxAnalyzer::trackToken_
edm::EDGetTokenT< reco::TrackCollection > trackToken_
Definition: dEdxAnalyzer.h:78
dEdxAnalyzer::dEdxMEs
Definition: dEdxAnalyzer.h:55
dqm::impl::MonitorElement
Definition: MonitorElement.h:98
dEdxAnalyzer::dEdxMEs::dEdxMEs
dEdxMEs()
Definition: dEdxAnalyzer.h:64
dEdxAnalyzer::mass
double mass(double P, double I)
Definition: dEdxAnalyzer.cc:138
dEdxAnalyzer::TrackName
std::string TrackName
Definition: dEdxAnalyzer.h:83
dEdxAnalyzer::doAllPlots_
bool doAllPlots_
Definition: dEdxAnalyzer.h:52
DeDxData.h
edm::Run
Definition: Run.h:45
edm::EDGetTokenT< reco::TrackCollection >
dEdxAnalyzer::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: dEdxAnalyzer.cc:55
dEdxAnalyzer::dEdxMEs::ME_MipHighPtDeDxNHits
MonitorElement * ME_MipHighPtDeDxNHits
Definition: dEdxAnalyzer.h:62
dEdxAnalyzer::dEdxMEs::ME_MipDeDxNHits
MonitorElement * ME_MipDeDxNHits
Definition: dEdxAnalyzer.h:57
DQMStore.h
dEdxAnalyzer::AlgoNames
std::vector< std::string > AlgoNames
Definition: dEdxAnalyzer.h:84
EDAnalyzer.h
dEdxAnalyzer::histname
std::string histname
Definition: dEdxAnalyzer.h:86
dEdxAnalyzer::~dEdxAnalyzer
~dEdxAnalyzer() override
Definition: dEdxAnalyzer.cc:39
dEdxAnalyzer::genTriggerEventFlag_
GenericTriggerEventFlag * genTriggerEventFlag_
Definition: dEdxAnalyzer.h:88
dEdxAnalyzer::analyze
void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup) override
Definition: dEdxAnalyzer.cc:146
dEdxAnalyzer::HIPdEdxMin
double HIPdEdxMin
Definition: dEdxAnalyzer.h:74
dEdxAnalyzer::TrackHitMin
double TrackHitMin
Definition: dEdxAnalyzer.h:74
MakerMacros.h
dEdxAnalyzer::dEdxMEsVector
std::vector< dEdxMEs > dEdxMEsVector
Definition: dEdxAnalyzer.h:85
Track.h
dEdxAnalyzer::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: dEdxAnalyzer.cc:191
TrackFwd.h
dqm::legacy::DQMStore
Definition: DQMStore.h:728
dEdxAnalyzer::dEdxMEs::ME_MipDeDxMass
MonitorElement * ME_MipDeDxMass
Definition: dEdxAnalyzer.h:59
Exhume::I
const std::complex< double > I
Definition: I.h:8
Service.h
dEdxAnalyzer::dEdxMEs::ME_HipDeDxMass
MonitorElement * ME_HipDeDxMass
Definition: dEdxAnalyzer.h:60
dEdxAnalyzer::trackInputTag_
edm::InputTag trackInputTag_
Definition: dEdxAnalyzer.h:77
dEdxAnalyzer::doDeDxPlots_
bool doDeDxPlots_
Definition: dEdxAnalyzer.h:53
EDGetToken.h
DQMEDAnalyzer.h
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
DQMEDAnalyzer
Definition: DQMEDAnalyzer.py:1
dEdxAnalyzer::dqmStore_
DQMStore * dqmStore_
Definition: dEdxAnalyzer.h:48
dEdxAnalyzer::HighPtThreshold
double HighPtThreshold
Definition: dEdxAnalyzer.h:74
dEdxAnalyzer::dEdxTokenList_
std::vector< edm::EDGetTokenT< reco::DeDxDataValueMap > > dEdxTokenList_
Definition: dEdxAnalyzer.h:81
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
GenericTriggerEventFlag
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
Definition: GenericTriggerEventFlag.h:42
iEvent
int iEvent
Definition: GenABIO.cc:224
edm::EventSetup
Definition: EventSetup.h:58
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
dEdxAnalyzer::dEdxMEs::ME_MipDeDxNSatHits
MonitorElement * ME_MipDeDxNSatHits
Definition: dEdxAnalyzer.h:58
dEdxAnalyzer::dEdxInputList_
std::vector< std::string > dEdxInputList_
Definition: dEdxAnalyzer.h:80
dEdxAnalyzer::dEdxAnalyzer
dEdxAnalyzer(const edm::ParameterSet &)
Definition: dEdxAnalyzer.cc:22
Frameworkfwd.h
dEdxAnalyzer::conf_
edm::ParameterSet conf_
Definition: dEdxAnalyzer.h:50
dEdxAnalyzer::dEdxMEs::ME_MipDeDx
MonitorElement * ME_MipDeDx
Definition: dEdxAnalyzer.h:56
dEdxAnalyzer
Definition: dEdxAnalyzer.h:34
EventSetup.h
dqm::implementation::IBooker
Definition: DQMStore.h:43
dEdxAnalyzer::dEdxMEs::ME_MipHighPtDeDx
MonitorElement * ME_MipHighPtDeDx
Definition: dEdxAnalyzer.h:61
dEdxAnalyzer::dEdxK
double dEdxK
Definition: dEdxAnalyzer.h:75
ConsumesCollector.h
ParameterSet.h
dEdxAnalyzer::dEdxC
double dEdxC
Definition: dEdxAnalyzer.h:75
P
std::pair< OmniClusterRef, TrackingParticleRef > P
Definition: BDHadronTrackMonitoringAnalyzer.cc:203
edm::Event
Definition: Event.h:73
edm::InputTag
Definition: InputTag.h:15