CMS 3D CMS Logo

DTNoDriftAlgo.h
Go to the documentation of this file.
1 #ifndef RecoLocalMuon_DTNoDriftAlgo_H
2 #define RecoLocalMuon_DTNoDriftAlgo_H
3 
14 
16 public:
19 
21  ~DTNoDriftAlgo() override;
22 
23  // Operations
24 
26  void setES(const edm::EventSetup& setup) override;
27 
32  const DTLayerId& layerId,
33  const DTDigiCollection::Range& digiRange) override;
34 
39  bool compute(const DTLayer* layer,
40  const DTDigi& digi,
41  LocalPoint& leftPoint,
42  LocalPoint& rightPoint,
43  LocalError& error) const override;
44 
48  bool compute(const DTLayer* layer,
49  const DTRecHit1D& recHit1D,
50  const float& angle,
51  DTRecHit1D& newHit1D) const override;
52 
58  bool compute(const DTLayer* layer,
59  const DTRecHit1D& recHit1D,
60  const float& angle,
61  const GlobalPoint& globPos,
62  DTRecHit1D& newHit1D) const override;
63 
64 private:
65  // Do the actual work.
66  virtual bool compute(const DTLayer* layer,
67  const DTWireId& wireId,
68  const float digiTime,
69  const GlobalPoint& globPos,
70  LocalPoint& leftPoint,
71  LocalPoint& rightPoint,
73  int step) const;
74 
75  // Interface to the method which does the actual work suited for 2nd and 3rd steps
76  virtual bool compute(const DTLayer* layer,
77  const DTWireId& wireId,
78  const float digiTime,
79  const GlobalPoint& globPos,
80  DTRecHit1D& newHit1D,
81  int step) const;
82 
83  // The Drift Velocity (cm/ns)
84  const float fixedDrift;
85 
86  // The resolution on the Hits (cm)
87  const float hitResolution;
88 
89  // Times below MinTime (ns) are considered as coming from previous BXs.
90  const float minTime;
91 
92  // Times above MaxTime (ns) are considered as coming from following BXs
93  const float maxTime;
94 
95  // Switch on/off the verbosity
96  const bool debug;
97 };
98 #endif
step
step
Definition: StallMonitor.cc:94
DTRecHitBaseAlgo
Definition: DTRecHitBaseAlgo.h:29
DTRecHit1D
Definition: DTRecHit1D.h:25
DTRecHitBaseAlgo.h
relativeConstraints.error
error
Definition: relativeConstraints.py:53
singleTopDQM_cfi.setup
setup
Definition: singleTopDQM_cfi.py:37
DTNoDriftAlgo::minTime
const float minTime
Definition: DTNoDriftAlgo.h:90
config
Definition: config.py:1
DTWireId
Definition: DTWireId.h:12
DTNoDriftAlgo::compute
bool compute(const DTLayer *layer, const DTDigi &digi, LocalPoint &leftPoint, LocalPoint &rightPoint, LocalError &error) const override
Definition: DTNoDriftAlgo.cc:78
Point3DBase< float, LocalTag >
DTLayerId
Definition: DTLayerId.h:12
DTNoDriftAlgo::debug
const bool debug
Definition: DTNoDriftAlgo.h:96
phase1PixelTopology::layer
constexpr std::array< uint8_t, layerIndexSize > layer
Definition: phase1PixelTopology.h:99
edm::ParameterSet
Definition: ParameterSet.h:47
LocalError
Definition: LocalError.h:12
DTNoDriftAlgo::hitResolution
const float hitResolution
Definition: DTNoDriftAlgo.h:87
DTNoDriftAlgo::DTNoDriftAlgo
DTNoDriftAlgo(const edm::ParameterSet &config)
Constructor.
Definition: DTNoDriftAlgo.cc:18
DTNoDriftAlgo::reconstruct
edm::OwnVector< DTRecHit1DPair > reconstruct(const DTLayer *layer, const DTLayerId &layerId, const DTDigiCollection::Range &digiRange) override
Definition: DTNoDriftAlgo.cc:34
edm::EventSetup
Definition: EventSetup.h:58
DTNoDriftAlgo::~DTNoDriftAlgo
~DTNoDriftAlgo() override
Destructor.
Definition: DTNoDriftAlgo.cc:27
DTNoDriftAlgo
Definition: DTNoDriftAlgo.h:15
DTLayer
Definition: DTLayer.h:25
DTNoDriftAlgo::setES
void setES(const edm::EventSetup &setup) override
Pass the Event Setup to the algo at each event.
Definition: DTNoDriftAlgo.cc:29
angle
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Definition: angle.h:11
DTDigi
Definition: DTDigi.h:17
MuonDigiCollection::Range
std::pair< const_iterator, const_iterator > Range
Definition: MuonDigiCollection.h:95
DTNoDriftAlgo::fixedDrift
const float fixedDrift
Definition: DTNoDriftAlgo.h:84
edm::OwnVector
Definition: OwnVector.h:24
DTNoDriftAlgo::maxTime
const float maxTime
Definition: DTNoDriftAlgo.h:93