CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SiPixelLorentzAngle.h
Go to the documentation of this file.
1 #ifndef CalibTracker_SiPixelLorentzAngle_SiPixelLorentzAngle_h
2 #define CalibTracker_SiPixelLorentzAngle_SiPixelLorentzAngle_h
3 
23 // #include "CalibTracker/SiPixelLorentzAngle/interface/TrackLocalAngle.h"
30 #include <TROOT.h>
31 #include <TTree.h>
32 #include <TFile.h>
33 #include <TH1F.h>
34 #include <TH2F.h>
35 #include <TF1.h>
36 #include "TROOT.h"
37 
38 
46 // ggiurgiu@fnal.gov : remove namespace 12/27/09
47 //namespace
48 //{
49  static const int maxpix = 1000;
50  struct Pixinfo
51  {
52  int npix;
53  float row[maxpix];
54  float col[maxpix];
55  float adc[maxpix];
56  float x[maxpix];
57  float y[maxpix];
58  };
59  struct Hit
60  {
61  float x;
62  float y;
63  double alpha;
64  double beta;
65  double gamma;
66  };
67  struct Clust
68  {
69  float x;
70  float y;
71  float charge;
72  int size_x;
73  int size_y;
78  };
79  struct Rechit
80  {
81  float x;
82  float y;
83  };
84 //}
85 
86 //SiPixelLorentzAngle is already the name of a data product
87 namespace analyzer {
89 {
90  public:
91 
93 
94  virtual ~SiPixelLorentzAngle();
95  //virtual void beginJob(const edm::EventSetup& c);
96  virtual void beginJob();
97  virtual void endJob();
98  virtual void analyze(const edm::Event& e, const edm::EventSetup& c);
99 
100  private:
101 
102  void fillPix(const SiPixelCluster & LocPix, const PixelTopology * topol, Pixinfo& pixinfo);
103 
104 
105  void findMean(int i, int i_ring);
106 
107  TFile* hFile_;
110 
111  // tree branches barrel
112  int run_;
113  int event_;
114  int module_;
115  int ladder_;
116  int layer_;
118  float pt_;
119  float eta_;
120  float phi_;
121  double chi2_;
122  double ndof_;
127 
128  // tree branches forward
129  int runF_;
130  int eventF_;
131  int sideF_;
132  int diskF_;
133  int bladeF_;
134  int panelF_;
135  int moduleF_;
136  float ptF_;
137  float etaF_;
138  float phiF_;
139  double chi2F_;
140  double ndofF_;
145 
146  // parameters from config file
149  double ptmin_;
150  bool simData_;
151  double normChi2Max_;
153  double residualMax_;
157 
158  // for the TrackerHitAssociator
160 
161  // histogram etc
162  int hist_x_;
163  int hist_y_;
164  double min_x_;
165  double max_x_;
166  double min_y_;
167  double max_y_;
168  double width_;
169  double min_depth_;
170  double max_depth_;
171  double min_drift_;
172  double max_drift_;
173 
174  std::map<int, TH2F*> _h_drift_depth_adc_;
175  std::map<int, TH2F*> _h_drift_depth_adc2_;
176  std::map<int, TH2F*> _h_drift_depth_noadc_;
177  std::map<int, TH2F*> _h_drift_depth_;
179  std::map<int, TH1F*> _h_mean_;
186  TH1F *h_tracks_;
187 
188 
190 
191  // CMSSW classes needed
203 
204 };
205 }
206 
207 #endif
int i
Definition: DBlmapReader.cc:9
std::map< int, TH2F * > _h_drift_depth_adc_
PropagatorWithMaterial * thePropagatorOp
void findMean(int i, int i_ring)
float adc[maxpix]
std::map< int, TH2F * > _h_drift_depth_
Chi2MeasurementEstimator * theEstimator
const TrackerGeometry * tracker
virtual void analyze(const edm::Event &e, const edm::EventSetup &c)
static const int maxpix
float row[maxpix]
TrajectoryStateTransform tsTransform
SiPixelLorentzAngle(const edm::ParameterSet &conf)
std::map< int, TH2F * > _h_drift_depth_adc2_
double beta
TrackerHitAssociator::Config trackerHitAssociatorConfig_
PropagatorWithMaterial * thePropagator
const KFTrajectoryFitter * theFitter
tuple conf
Definition: dbtoconf.py:185
edm::EDGetTokenT< TrajTrackAssociationCollection > t_trajTrack
double alpha
float x[maxpix]
Pixel cluster – collection of neighboring pixels above threshold.
const TransientTrackingRecHitBuilder * RHBuilder
float col[maxpix]
const KFTrajectorySmoother * theSmoother
double gamma
std::map< int, TH2F * > _h_drift_depth_noadc_
std::map< int, TH1F * > _h_mean_
void fillPix(const SiPixelCluster &LocPix, const PixelTopology *topol, Pixinfo &pixinfo)
float y[maxpix]