CMS 3D CMS Logo

GEMRecHitBaseAlgo.h
Go to the documentation of this file.
1 #ifndef RecoLocalMuon_GEMRecHit_GEMRecHitBaseAlgo_H
2 #define RecoLocalMuon_GEMRecHit_GEMRecHitBaseAlgo_H
3 
17 
20 
21 class GEMCluster;
22 class GEMEtaPartition;
23 class GEMDetId;
24 
25 namespace edm {
26  class ParameterSet;
27  class EventSetup;
28 } // namespace edm
29 
31 public:
34 
36  virtual ~GEMRecHitBaseAlgo();
37 
39  virtual void setES(const edm::EventSetup& setup) = 0;
40 
43  const GEMDetId& gemId,
44  const GEMDigiCollection::Range& digiRange,
45  const EtaPartitionMask& mask);
46 
48  virtual bool compute(const GEMEtaPartition& roll,
49  const GEMCluster& cl,
51  LocalError& error) const = 0;
52 
55  virtual bool compute(const GEMEtaPartition& roll,
56  const GEMCluster& cl,
57  const float& angle,
58  const GlobalPoint& globPos,
60  LocalError& error) const = 0;
61 };
62 #endif
virtual bool compute(const GEMEtaPartition &roll, const GEMCluster &cl, LocalPoint &Point, LocalError &error) const =0
standard local recHit computation
virtual void setES(const edm::EventSetup &setup)=0
Pass the Event Setup to the algo at each event.
Definition: config.py:1
virtual edm::OwnVector< GEMRecHit > reconstruct(const GEMEtaPartition &roll, const GEMDetId &gemId, const GEMDigiCollection::Range &digiRange, const EtaPartitionMask &mask)
Build all hits in the range associated to the gemId, at the 1st step.
constexpr uint32_t mask
Definition: gpuClustering.h:24
virtual ~GEMRecHitBaseAlgo()
Destructor.
std::bitset< maskSIZE > EtaPartitionMask
std::pair< const_iterator, const_iterator > Range
HLT enums.
Structure Point Contains parameters of Gaussian fits to DMRs.
GEMRecHitBaseAlgo(const edm::ParameterSet &config)
Constructor.
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Definition: angle.h:11