CMS 3D CMS Logo

RPCRecHitBaseAlgo.h
Go to the documentation of this file.
1 #ifndef RecoLocalMuon_RPCRecHitBaseAlgo_H
2 #define RecoLocalMuon_RPCRecHitBaseAlgo_H
3 
17 
19 #include "RPCRollMask.h"
20 
21 class RPCCluster;
22 class RPCRoll;
23 class RPCDetId;
24 
25 namespace edm {
26  class EventSetup;
27 }
28 
30 public:
33 
35  virtual ~RPCRecHitBaseAlgo(){};
36 
38  virtual void setES(const edm::EventSetup& setup) = 0;
39 
42  const RPCDetId& rpcId,
43  const RPCDigiCollection::Range& digiRange,
44  const RollMask& mask);
45 
47  virtual bool compute(const RPCRoll& roll,
48  const RPCCluster& cl,
51  float& time,
52  float& timeErr) const = 0;
53 
56  virtual bool compute(const RPCRoll& roll,
57  const RPCCluster& cl,
58  const float& angle,
59  const GlobalPoint& globPos,
62  float& time,
63  float& timeErr) const = 0;
64 };
65 #endif
Definition: config.py:1
constexpr uint32_t mask
Definition: gpuClustering.h:26
virtual ~RPCRecHitBaseAlgo()
Destructor.
virtual bool compute(const RPCRoll &roll, const RPCCluster &cl, LocalPoint &Point, LocalError &error, float &time, float &timeErr) const =0
standard local recHit computation
virtual void setES(const edm::EventSetup &setup)=0
Pass the Event Setup to the algo at each event.
std::bitset< maskSIZE > RollMask
Definition: RPCRollMask.h:7
RPCRecHitBaseAlgo(const edm::ParameterSet &config)
Constructor.
std::pair< const_iterator, const_iterator > Range
HLT enums.
Structure Point Contains parameters of Gaussian fits to DMRs.
virtual edm::OwnVector< RPCRecHit > reconstruct(const RPCRoll &roll, const RPCDetId &rpcId, const RPCDigiCollection::Range &digiRange, const RollMask &mask)
Build all hits in the range associated to the rpcId, at the 1st step.
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Definition: angle.h:11