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 
85 
86 
87 namespace edm {
88  class TriggerNames;
89 }
90 
91 class CSCHaloAlgo {
92 
93  public:
94  CSCHaloAlgo();
96  reco::CSCHaloData Calculate(const CSCGeometry& TheCSCGeometry,edm::Handle<reco::MuonCollection>& TheCosmicMuons,
97  const edm::Handle<reco::MuonTimeExtraMap> TheCSCTimeMap,
102  edm::Handle<edm::TriggerResults>& TheHLTResults, const edm::TriggerNames * triggerNames,
103  const edm::Handle<CSCALCTDigiCollection>& TheALCTs, MuonSegmentMatcher *TheMatcher,
104  const edm::Event &TheEvent, const edm::EventSetup &TheEventSetup);
105 
106  std::vector<edm::InputTag> vIT_HLTBit;
107 
108  void SetDetaThreshold(float x ){ deta_threshold = x;}
109  void SetMinMaxInnerRadius(float min, float max){ min_inner_radius = min; max_inner_radius = max;}
110  void SetMinMaxOuterRadius(float min, float max) { min_outer_radius = min; max_outer_radius = max;}
111  void SetDphiThreshold(float x) { dphi_threshold = x;}
112  void SetNormChi2Threshold(float x) { norm_chi2_threshold = x;}
113  void SetRecHitTime0(float x) { recHit_t0 = x;}
114  void SetRecHitTimeWindow(float x) { recHit_twindow = x; }
115  void SetExpectedBX(int x) { expected_BX = x ;}
116  void SetMinMaxOuterMomentumTheta(float min , float max){ min_outer_theta = min; max_outer_theta = max;}
117  void SetMatchingDPhiThreshold(float x) { matching_dphi_threshold = x;}
118  void SetMatchingDEtaThreshold(float x) { matching_deta_threshold = x;}
119  void SetMatchingDWireThreshold(int x) { matching_dwire_threshold = x;}
120  void SetMaxDtMuonSegment(float x ){ max_dt_muon_segment = x;}
121  void SetMaxFreeInverseBeta(float x ){ max_free_inverse_beta = x;}
122 
123  // MLR
124  void SetMaxSegmentRDiff(float x) { max_segment_r_diff = x; }
125  void SetMaxSegmentPhiDiff(float x) { max_segment_phi_diff = x; }
126  void SetMaxSegmentTheta(float x) { max_segment_theta = x; }
127  // End MLR
128 
129  private:
139  float recHit_t0;
147  // MLR
151  // End MLR
152  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;
153  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;
154  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;
155 
156 
157 
160  math::XYZPoint getPosition(const DetId &id, reco::Vertex::Point vtx);
161  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);
162  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 );
163 
164 };
165 
166 #endif
float recHit_t0
Definition: CSCHaloAlgo.h:139
void SetMaxSegmentTheta(float x)
Definition: CSCHaloAlgo.h:126
float et_thresh_rh_ee
Definition: CSCHaloAlgo.h:154
float max_segment_r_diff
Definition: CSCHaloAlgo.h:148
void SetMatchingDEtaThreshold(float x)
Definition: CSCHaloAlgo.h:118
float min_outer_radius
Definition: CSCHaloAlgo.h:135
float recHit_twindow
Definition: CSCHaloAlgo.h:140
float max_outer_radius
Definition: CSCHaloAlgo.h:136
float et_thresh_rh_hbhe
Definition: CSCHaloAlgo.h:152
void SetMaxDtMuonSegment(float x)
Definition: CSCHaloAlgo.h:120
float dphi_threshold
Definition: CSCHaloAlgo.h:137
void SetRecHitTimeWindow(float x)
Definition: CSCHaloAlgo.h:114
float deta_threshold
Definition: CSCHaloAlgo.h:130
float max_inner_radius
Definition: CSCHaloAlgo.h:134
float min_outer_theta
Definition: CSCHaloAlgo.h:132
void SetMatchingDWireThreshold(int x)
Definition: CSCHaloAlgo.h:119
void SetMaxSegmentRDiff(float x)
Definition: CSCHaloAlgo.h:124
void SetMinMaxOuterRadius(float min, float max)
Definition: CSCHaloAlgo.h:110
float max_segment_phi_diff
Definition: CSCHaloAlgo.h:149
float matching_dphi_threshold
Definition: CSCHaloAlgo.h:142
float matching_deta_threshold
Definition: CSCHaloAlgo.h:143
const CaloGeometry * geo_
Definition: CSCHaloAlgo.h:158
void SetDetaThreshold(float x)
Definition: CSCHaloAlgo.h:108
Helper class for the calculation of a top and a W boson mass estime.
std::vector< edm::InputTag > vIT_HLTBit
Definition: CSCHaloAlgo.h:106
float max_outer_theta
Definition: CSCHaloAlgo.h:131
float max_dt_muon_segment
Definition: CSCHaloAlgo.h:145
float et_thresh_rh_eb
Definition: CSCHaloAlgo.h:153
math::XYZPoint Point
point in the space
Definition: Vertex.h:39
void SetExpectedBX(int x)
Definition: CSCHaloAlgo.h:115
EventID const & min(EventID const &lh, EventID const &rh)
Definition: EventID.h:137
const HcalGeometry * hgeo_
Definition: CSCHaloAlgo.h:159
float min_inner_radius
Definition: CSCHaloAlgo.h:133
void SetMaxSegmentPhiDiff(float x)
Definition: CSCHaloAlgo.h:125
void SetMinMaxInnerRadius(float min, float max)
Definition: CSCHaloAlgo.h:109
Definition: DetId.h:18
void SetRecHitTime0(float x)
Definition: CSCHaloAlgo.h:113
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
float max_segment_theta
Definition: CSCHaloAlgo.h:150
float max_free_inverse_beta
Definition: CSCHaloAlgo.h:146
int matching_dwire_threshold
Definition: CSCHaloAlgo.h:144
float norm_chi2_threshold
Definition: CSCHaloAlgo.h:138
HLT enums.
void SetMaxFreeInverseBeta(float x)
Definition: CSCHaloAlgo.h:121
void SetMatchingDPhiThreshold(float x)
Definition: CSCHaloAlgo.h:117
void SetMinMaxOuterMomentumTheta(float min, float max)
Definition: CSCHaloAlgo.h:116
void SetNormChi2Threshold(float x)
Definition: CSCHaloAlgo.h:112
void SetDphiThreshold(float x)
Definition: CSCHaloAlgo.h:111
EventID const & max(EventID const &lh, EventID const &rh)
Definition: EventID.h:142