CMS 3D CMS Logo

DTRecHitBaseAlgo.h
Go to the documentation of this file.
1 #ifndef RecoLocalMuon_DTRecHitBaseAlgo_H
2 #define RecoLocalMuon_DTRecHitBaseAlgo_H
3 
14 
18 
19 class DTDigi;
20 class DTLayer;
21 class DTLayerId;
22 class DTTTrigBaseSync;
23 
24 namespace edm {
25  class ParameterSet;
26  class EventSetup;
27 }
28 
29 
30 
31 
32 
34 
35  public:
36 
39 
41  virtual ~DTRecHitBaseAlgo();
42 
43 
45  virtual void setES(const edm::EventSetup& setup) = 0;
46 
47 
49  virtual edm::OwnVector<DTRecHit1DPair> reconstruct(const DTLayer* layer,
50  const DTLayerId& layerId,
51  const DTDigiCollection::Range& digiRange);
52 
53 
58  virtual bool compute(const DTLayer* layer,
59  const DTDigi& digi,
60  LocalPoint& leftPoint,
61  LocalPoint& rightPoint,
62  LocalError& error) const = 0 ;
63 
64 
71  virtual bool compute(const DTLayer* layer,
72  const DTRecHit1D& recHit1D,
73  const float& angle,
74  DTRecHit1D& newHit1D) const = 0;
75 
76 
84  virtual bool compute(const DTLayer* layer,
85  const DTRecHit1D& recHit1D,
86  const float& angle,
87  const GlobalPoint& globPos,
88  DTRecHit1D& newHit1D) const = 0;
89 
90  protected:
91  // The module to be used for digi time synchronization
92  std::unique_ptr<DTTTrigBaseSync> theSync;
93 
94 };
95 #endif
96 
97 
98 
99 
def setup(process, global_tag, zero_tesla=False)
Definition: GeneralSetup.py:2
Definition: config.py:1
Definition: DTDigi.h:17
std::unique_ptr< DTTTrigBaseSync > theSync
def compute(min, max)
HLT enums.
std::pair< const_iterator, const_iterator > Range
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Definition: angle.h:11