CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
IsolatedTracksHcalScale.h
Go to the documentation of this file.
1 #ifndef CalibrationIsolatedParticlesIsolatedTracksHcalScale_h
2 #define CalibrationIsolatedParticlesIsolatedTracksHcalScale_h
3 
4 // system include files
5 #include <memory>
6 #include <cmath>
7 #include <string>
8 #include <map>
9 #include <vector>
10 
11 // user include files
12 #include <Math/GenVector/VectorUtil.h>
13 
20 
22 
23 // TFile Service
26 
31 
32 // muons and tracks
36 // Vertices
40 // Calorimeters
53 
54 //L1 objects
61 
62 // Jets in the event
66 
67 // SimHit
69 //simtrack
74 
75 // track associator
79 // ecal / hcal
86 
88 
94 
101 
102 // root objects
103 #include "TROOT.h"
104 #include "TSystem.h"
105 #include "TFile.h"
106 #include "TH1F.h"
107 #include "TH2F.h"
108 #include "TProfile.h"
109 #include "TDirectory.h"
110 #include "TTree.h"
111 
113 
114 public:
117 
118 private:
119  //void beginJob(const edm::EventSetup&) ;
120  void beginJob() ;
121  void analyze(const edm::Event&, const edm::EventSetup&);
122  void endJob() ;
123 
124  void clearTreeVectors();
125 
126 private:
127 
128  bool initL1, doMC;
133  double tMinE_, tMaxE_;
134 
141 
147 
150 
151  double genPartEtaBins[4];
152 
153  static const size_t NEtaBins = 3;
154 
155  TTree* tree;
156 
158  std::vector<double> *t_trackP, *t_trackPt, *t_trackEta, *t_trackPhi;
159  std::vector<double> *t_trackHcalEta, *t_trackHcalPhi, *t_eHCALDR;
160  std::vector<double> *t_hCone, *t_conehmaxNearP, *t_eMipDR, *t_eECALDR;
161  std::vector<double> *t_e11x11_20Sig, *t_e15x15_20Sig;
162  std::vector<double> *t_eMipDR_1, *t_eECALDR_1, *t_eMipDR_2, *t_eECALDR_2;
163  std::vector<double> *t_hConeHB, *t_eHCALDRHB;
166  std::vector<double> *t_hsimInfoTotal, *t_hsim;
169  std::vector<int> *t_nSimHits;
171 };
172 
173 #endif
std::vector< double > * t_hsimInfoMatched
edm::Service< TFileService > fs
std::vector< double > * t_eHCALDR
std::vector< int > * t_hsimInfoNRest
std::vector< double > * t_hCone
IsolatedTracksHcalScale(const edm::ParameterSet &)
edm::EDGetTokenT< HBHERecHitCollection > tok_hbhe_
std::vector< int > * t_hsimInfoNTotal
std::vector< int > * t_hsimInfoNCharHad
edm::EDGetTokenT< edm::PCaloHitContainer > tok_caloEE_
std::vector< int > * t_hsimInfoNMatched
edm::EDGetTokenT< EcalRecHitCollection > tok_EE_
std::vector< double > * t_hsim
std::vector< double > * t_hsimInfoNeutHad
std::vector< double > * t_eMipDR_2
std::vector< int > * t_hsimInfoNPhoton
edm::EDGetTokenT< EcalRecHitCollection > tok_EB_
std::vector< double > * t_e11x11_20Sig
std::vector< int > * t_hsimInfoNNeutHad
edm::EDGetTokenT< edm::PCaloHitContainer > tok_caloEB_
void analyze(const edm::Event &, const edm::EventSetup &)
edm::EDGetTokenT< reco::VertexCollection > tok_recVtx_
std::vector< double > * t_trackEta
std::vector< double > * t_eECALDR_2
edm::EDGetTokenT< edm::SimTrackContainer > tok_simTk_
std::vector< double > * t_eECALDR
spr::trackSelectionParameters selectionParameters
std::vector< double > * t_eMipDR_1
std::vector< double > * t_trackPt
const MagneticField * bField
std::vector< double > * t_trackHcalEta
std::vector< double > * t_trackP
std::vector< double > * t_eECALDR_1
std::vector< double > * t_trackHcalPhi
std::vector< double > * t_hsimInfoPhoton
std::vector< double > * t_hsimInfoTotal
edm::EDGetTokenT< edm::PCaloHitContainer > tok_caloHH_
std::vector< double > * t_hsimInfoCharHad
edm::EDGetTokenT< reco::TrackCollection > tok_genTrack_
std::vector< double > * t_trackPhi
std::vector< double > * t_eHCALDRHB
std::vector< double > * t_hsimInfoPdgMatched
edm::EDGetTokenT< reco::BeamSpot > tok_bs_
edm::EDGetTokenT< edm::SimVertexContainer > tok_simVtx_
std::vector< int > * t_nSimHits
std::vector< double > * t_hConeHB
std::vector< double > * t_hsimInfoRest
std::vector< double > * t_conehmaxNearP
std::vector< double > * t_e15x15_20Sig
std::vector< double > * t_eMipDR