CMS 3D CMS Logo

CSCMake2DRecHit.h
Go to the documentation of this file.
1 #ifndef CSCRecHitD_CSCMake2DRecHit_h
2 #define CSCRecHitD_CSCMake2DRecHit_h
3 
12 //---- Possible changes from Stoyan Stoynev - NU
13 
18 
20 
22 
23 class CSCDetId;
24 class CSCLayer;
25 class CSCChamberSpecs;
26 class CSCLayerGeometry;
27 class CSCRecoConditions;
29 
31 public:
32  explicit CSCMake2DRecHit(const edm::ParameterSet&);
33 
35 
38  const CSCLayer* layer,
39  const CSCWireHit& wHit,
40  const CSCStripHit& sHit);
41 
43  bool isHitInFiducial(const CSCLayer* layer, const CSCRecHit2D& rh);
44 
47 
48  // Determine wire time using tpeak as initial estimate
49  float findWireBx(const std::vector<int>& timeBinsOn, float tpeak, const CSCDetId& id);
50 
51  const CSCLayer* layer_;
55 
56 private:
57  bool useCalib;
61  bool useGatti;
62  float maxGattiChi2;
63 
65 
66  // Cache pointer to conditions for current event
68 
69  const std::unique_ptr<CSCFindPeakTime> peakTimeFinder_;
70 };
71 
72 #endif
const CSCLayer * layer_
const CSCChamberSpecs * specs_
float findWireBx(const std::vector< int > &timeBinsOn, float tpeak, const CSCDetId &id)
void setConditions(const CSCRecoConditions *reco)
Pass pointer to conditions data onwards.
constexpr std::array< uint8_t, layerIndexSize > layer
CSCXonStrip_MatchGatti * xMatchGatti_
bool isHitInFiducial(const CSCLayer *layer, const CSCRecHit2D &rh)
Test if rechit is in fiducial volume.
const CSCRecoConditions * recoConditions_
const CSCLayerGeometry * layergeom_
CSCRecHit2D hitFromStripAndWire(const CSCDetId &id, const CSCLayer *layer, const CSCWireHit &wHit, const CSCStripHit &sHit)
Make 2D hits when have both wire and strip hit available in same layer.
fixed size matrix
const std::unique_ptr< CSCFindPeakTime > peakTimeFinder_
CSCMake2DRecHit(const edm::ParameterSet &)