CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DeDxEstimatorProducer.h
Go to the documentation of this file.
1 #ifndef TrackRecoDeDx_DeDxEstimatorProducer_H
2 #define TrackRecoDeDx_DeDxEstimatorProducer_H
3 // user include files
6 
9 
11 
13 
17 
18 #include <ext/hash_map>
19 
23 
24 #include "TFile.h"
25 #include "TChain.h"
26 
27 
28 //
29 // class declaration
30 //
31 
33 
34 public:
35 
38 
39 private:
40  virtual void beginRun(edm::Run & run, const edm::EventSetup&) ;
41  virtual void produce(edm::Event&, const edm::EventSetup&);
42  virtual void endJob() ;
43 
44  int getCharge(const SiStripCluster* Cluster, int& Saturating_Strips);
45 // int getCharge(const SiStripRecHit2D* sistripsimplehit, int& Saturating_Strips);
46  void MakeCalibrationMap();
47 
48 
49  // ----------member data ---------------------------
51 
54 
55  bool usePixel;
56  bool useStrip;
59 
60  unsigned int MaxNrStrips;
61  unsigned int MinTrackHits;
62 
63  std::string m_calibrationPath;
65 
66  private :
67  struct stModInfo{int DetId; float Thickness; float Distance; float Normalization; double Gain;};
68 
69  class isEqual{
70  public:
71  template <class T> bool operator () (const T& PseudoDetId1, const T& PseudoDetId2) { return PseudoDetId1==PseudoDetId2; }
72  };
73 
74  __gnu_cxx::hash_map<unsigned int, stModInfo*, __gnu_cxx::hash<unsigned int>, isEqual > MODsColl;
75 };
76 
77 #endif
78 
DeDxEstimatorProducer(const edm::ParameterSet &)
edm::InputTag m_trajTrackAssociationTag
bool operator()(const T &PseudoDetId1, const T &PseudoDetId2)
int getCharge(const SiStripCluster *Cluster, int &Saturating_Strips)
virtual void beginRun(edm::Run &run, const edm::EventSetup &)
BaseDeDxEstimator * m_estimator
virtual void produce(edm::Event &, const edm::EventSetup &)
__gnu_cxx::hash_map< unsigned int, stModInfo *, __gnu_cxx::hash< unsigned int >, isEqual > MODsColl
Definition: Run.h:31