CMS 3D CMS Logo

CSCHaloAlgo.h
Go to the documentation of this file.
1 #ifndef RECOMET_METALGORITHMS_CSCHALOALGO_H
2 #define RECOMET_METALGORITHMS_CSCHALOALGO_H
4 
5 /*
6  [class]: CSCHaloAlgo
7  [authors]: R. Remington, The University of Florida
8  [description]: Algorithm to calculate quantities relevant to CSCHaloData object
9  [date]: October 15, 2009
10 */
11 
84 
85 
86 namespace edm {
87  class TriggerNames;
88 }
89 
90 class CSCHaloAlgo {
91 
92  public:
93  CSCHaloAlgo();
95  reco::CSCHaloData Calculate(const CSCGeometry& TheCSCGeometry,edm::Handle<reco::MuonCollection>& TheCosmicMuons,
96  const edm::Handle<reco::MuonTimeExtraMap> TheCSCTimeMap,
101  edm::Handle<edm::TriggerResults>& TheHLTResults, const edm::TriggerNames * triggerNames,
102  const edm::Handle<CSCALCTDigiCollection>& TheALCTs, MuonSegmentMatcher *TheMatcher,
103  const edm::Event &TheEvent, const edm::EventSetup &TheEventSetup);
104 
105  std::vector<edm::InputTag> vIT_HLTBit;
106 
107  void SetDetaThreshold(float x ){ deta_threshold = x;}
108  void SetMinMaxInnerRadius(float min, float max){ min_inner_radius = min; max_inner_radius = max;}
109  void SetMinMaxOuterRadius(float min, float max) { min_outer_radius = min; max_outer_radius = max;}
110  void SetDphiThreshold(float x) { dphi_threshold = x;}
111  void SetNormChi2Threshold(float x) { norm_chi2_threshold = x;}
112  void SetRecHitTime0(float x) { recHit_t0 = x;}
113  void SetRecHitTimeWindow(float x) { recHit_twindow = x; }
114  void SetExpectedBX(int x) { expected_BX = x ;}
115  void SetMinMaxOuterMomentumTheta(float min , float max){ min_outer_theta = min; max_outer_theta = max;}
116  void SetMatchingDPhiThreshold(float x) { matching_dphi_threshold = x;}
117  void SetMatchingDEtaThreshold(float x) { matching_deta_threshold = x;}
118  void SetMatchingDWireThreshold(int x) { matching_dwire_threshold = x;}
119  void SetMaxDtMuonSegment(float x ){ max_dt_muon_segment = x;}
120  void SetMaxFreeInverseBeta(float x ){ max_free_inverse_beta = x;}
121 
122  // MLR
123  void SetMaxSegmentRDiff(float x) { max_segment_r_diff = x; }
124  void SetMaxSegmentPhiDiff(float x) { max_segment_phi_diff = x; }
125  void SetMaxSegmentTheta(float x) { max_segment_theta = x; }
126  // End MLR
127 
128  private:
138  float recHit_t0;
146  // MLR
150  // End MLR
151  float et_thresh_rh_hbhe, dphi_thresh_segvsrh_hbhe,dr_lowthresh_segvsrh_hbhe, dr_highthresh_segvsrh_hbhe, dt_lowthresh_segvsrh_hbhe, dt_highthresh_segvsrh_hbhe;
152  float et_thresh_rh_eb, dphi_thresh_segvsrh_eb,dr_lowthresh_segvsrh_eb, dr_highthresh_segvsrh_eb, dt_lowthresh_segvsrh_eb, dt_highthresh_segvsrh_eb;
153  float et_thresh_rh_ee, dphi_thresh_segvsrh_ee,dr_lowthresh_segvsrh_ee, dr_highthresh_segvsrh_ee, dt_lowthresh_segvsrh_ee, dt_highthresh_segvsrh_ee;
154 
155 
156 
158  math::XYZPoint getPosition(const DetId &id, reco::Vertex::Point vtx);
159  bool HCALSegmentMatching(edm::Handle<HBHERecHitCollection>& rechitcoll, float et_thresh_rh, float dphi_thresh_segvsrh, float dr_lowthresh_segvsrh, float dr_highthresh_segvsrh, float dt_lowthresh_segvsrh, float dt_highthresh_segvsrh, float iZ, float iR, float iT, float iPhi);
160  bool ECALSegmentMatching(edm::Handle<EcalRecHitCollection>& rechitcoll, float et_thresh_rh, float dphi_thresh_segvsrh, float dr_lowthresh_segvsrh, float dr_highthresh_segvsrh, float dt_lowthresh_segvsrh, float dt_highthresh_segvsrh, float iZ, float iR, float iT, float iPhi );
161 
162 };
163 
164 #endif
float recHit_t0
Definition: CSCHaloAlgo.h:138
void SetMaxSegmentTheta(float x)
Definition: CSCHaloAlgo.h:125
float et_thresh_rh_ee
Definition: CSCHaloAlgo.h:153
float max_segment_r_diff
Definition: CSCHaloAlgo.h:147
void SetMatchingDEtaThreshold(float x)
Definition: CSCHaloAlgo.h:117
const CaloGeometry * geo
Definition: CSCHaloAlgo.h:157
float min_outer_radius
Definition: CSCHaloAlgo.h:134
float recHit_twindow
Definition: CSCHaloAlgo.h:139
float max_outer_radius
Definition: CSCHaloAlgo.h:135
float et_thresh_rh_hbhe
Definition: CSCHaloAlgo.h:151
void SetMaxDtMuonSegment(float x)
Definition: CSCHaloAlgo.h:119
float dphi_threshold
Definition: CSCHaloAlgo.h:136
void SetRecHitTimeWindow(float x)
Definition: CSCHaloAlgo.h:113
float deta_threshold
Definition: CSCHaloAlgo.h:129
float max_inner_radius
Definition: CSCHaloAlgo.h:133
float min_outer_theta
Definition: CSCHaloAlgo.h:131
void SetMatchingDWireThreshold(int x)
Definition: CSCHaloAlgo.h:118
void SetMaxSegmentRDiff(float x)
Definition: CSCHaloAlgo.h:123
void SetMinMaxOuterRadius(float min, float max)
Definition: CSCHaloAlgo.h:109
float max_segment_phi_diff
Definition: CSCHaloAlgo.h:148
float matching_dphi_threshold
Definition: CSCHaloAlgo.h:141
float matching_deta_threshold
Definition: CSCHaloAlgo.h:142
void SetDetaThreshold(float x)
Definition: CSCHaloAlgo.h:107
Helper class for the calculation of a top and a W boson mass estime.
std::vector< edm::InputTag > vIT_HLTBit
Definition: CSCHaloAlgo.h:105
float max_outer_theta
Definition: CSCHaloAlgo.h:130
float max_dt_muon_segment
Definition: CSCHaloAlgo.h:144
float et_thresh_rh_eb
Definition: CSCHaloAlgo.h:152
math::XYZPoint Point
point in the space
Definition: Vertex.h:39
void SetExpectedBX(int x)
Definition: CSCHaloAlgo.h:114
EventID const & min(EventID const &lh, EventID const &rh)
Definition: EventID.h:137
float min_inner_radius
Definition: CSCHaloAlgo.h:132
void SetMaxSegmentPhiDiff(float x)
Definition: CSCHaloAlgo.h:124
void SetMinMaxInnerRadius(float min, float max)
Definition: CSCHaloAlgo.h:108
Definition: DetId.h:18
void SetRecHitTime0(float x)
Definition: CSCHaloAlgo.h:112
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
float max_segment_theta
Definition: CSCHaloAlgo.h:149
float max_free_inverse_beta
Definition: CSCHaloAlgo.h:145
int matching_dwire_threshold
Definition: CSCHaloAlgo.h:143
float norm_chi2_threshold
Definition: CSCHaloAlgo.h:137
HLT enums.
void SetMaxFreeInverseBeta(float x)
Definition: CSCHaloAlgo.h:120
void SetMatchingDPhiThreshold(float x)
Definition: CSCHaloAlgo.h:116
void SetMinMaxOuterMomentumTheta(float min, float max)
Definition: CSCHaloAlgo.h:115
void SetNormChi2Threshold(float x)
Definition: CSCHaloAlgo.h:111
void SetDphiThreshold(float x)
Definition: CSCHaloAlgo.h:110
EventID const & max(EventID const &lh, EventID const &rh)
Definition: EventID.h:142