CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 
32 class DQMStore;
34 
35 class dEdxAnalyzer : public DQMEDAnalyzer {
36  public:
37  explicit dEdxAnalyzer(const edm::ParameterSet&);
38  ~dEdxAnalyzer();
39 
40  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
41 
42  virtual void beginJob();
43  virtual void analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup);
44  virtual void endJob() ;
45 
46  double mass(double P, double I);
47 
48  // virtual void beginRun(const edm::Run&, const edm::EventSetup&);
49  virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&);
50  virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&);
51 
52  void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
53 
54  private:
55  // ----------member data ---------------------------
59 
62 
63  struct dEdxMEs
64  {
70 
77  {}
78  };
79 
81  double dEdxK, dEdxC;
82 
85 
86  std::vector<std::string> dEdxInputList_;
87  std::vector<edm::EDGetTokenT<reco::DeDxDataValueMap> > dEdxTokenList_;
88 
90  std::vector< std::string > AlgoNames;
91  std::vector< dEdxMEs > dEdxMEsVector;
92  std::string histname; //for naming the histograms according to algorithm used
93 
95 
96 };
edm::EDGetTokenT< reco::TrackCollection > trackToken_
Definition: dEdxAnalyzer.h:84
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
double dEdxC
Definition: dEdxAnalyzer.h:81
double TrackHitMin
Definition: dEdxAnalyzer.h:80
MonitorElement * ME_MipDeDx
Definition: dEdxAnalyzer.h:65
virtual void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &)
MonitorElement * ME_HipDeDxMass
Definition: dEdxAnalyzer.h:69
#define P
std::vector< std::string > AlgoNames
Definition: dEdxAnalyzer.h:90
#define NULL
Definition: scimark2.h:8
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
edm::ParameterSet conf_
Definition: dEdxAnalyzer.h:58
virtual void beginJob()
double dEdxK
Definition: dEdxAnalyzer.h:81
dEdxAnalyzer(const edm::ParameterSet &)
Definition: dEdxAnalyzer.cc:22
int iEvent
Definition: GenABIO.cc:230
std::vector< std::string > dEdxInputList_
Definition: dEdxAnalyzer.h:86
MonitorElement * ME_MipDeDxNSatHits
Definition: dEdxAnalyzer.h:67
MonitorElement * ME_MipDeDxNHits
Definition: dEdxAnalyzer.h:66
GenericTriggerEventFlag * genTriggerEventFlag_
Definition: dEdxAnalyzer.h:94
edm::ParameterSet fullconf_
Definition: dEdxAnalyzer.h:57
const std::complex< double > I
Definition: I.h:8
bool doAllPlots_
Definition: dEdxAnalyzer.h:60
bool doDeDxPlots_
Definition: dEdxAnalyzer.h:61
edm::InputTag trackInputTag_
Definition: dEdxAnalyzer.h:83
std::vector< dEdxMEs > dEdxMEsVector
Definition: dEdxAnalyzer.h:91
double mass(double P, double I)
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: dEdxAnalyzer.cc:70
virtual void endJob()
Definition: dEdxAnalyzer.cc:48
DQMStore * dqmStore_
Definition: dEdxAnalyzer.h:56
double HIPdEdxMin
Definition: dEdxAnalyzer.h:80
virtual void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup)
std::string histname
Definition: dEdxAnalyzer.h:92
std::vector< edm::EDGetTokenT< reco::DeDxDataValueMap > > dEdxTokenList_
Definition: dEdxAnalyzer.h:87
MonitorElement * ME_MipDeDxMass
Definition: dEdxAnalyzer.h:68
std::string TrackName
Definition: dEdxAnalyzer.h:89
virtual void beginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &)
Definition: Run.h:41