CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DTRecHit1DPair.h
Go to the documentation of this file.
1 #ifndef DTRecHit_DTRecHit1DPair_H
2 #define DTRecHit_DTRecHit1DPair_H
3 
20 
21 #include <utility>
22 
23 class DTLayer;
24 class DTDigi;
25 
26 class DTRecHit1DPair : public RecHit1D {
27 public:
30  const DTDigi& digi);
31 
34 
35 
37  virtual ~DTRecHit1DPair();
38 
39  // Operations
40 
41  virtual DTRecHit1DPair * clone() const;
42 
43 
47  virtual LocalPoint localPosition() const;
48 
49 
53  virtual LocalError localPositionError() const;
54 
55 
58  virtual std::vector<const TrackingRecHit*> recHits() const;
59 
60 
63  virtual std::vector<TrackingRecHit*> recHits();
64 
65 
67  virtual DetId geographicalId() const;
68 
69 
71  float digiTime() const {
72  return theLeftHit.digiTime();
73  }
74 
75 
77  bool operator==(const DTRecHit1DPair& hit) const;
78 
79 
82  bool operator!=(const DTRecHit1DPair& hit) const {
83  return !(*this==hit);
84  }
85 
86 
90 
91 
95 
96 
99  void setPosition(DTEnums::DTCellSide lrside, const LocalPoint& point);
100 
101 
105  const LocalPoint& point,
106  const LocalError& err);
107 
108 
109  // Return the wireId
110  DTWireId wireId() const {
111  return theLeftHit.wireId();
112  }
113 
114 
116  const DTRecHit1D* componentRecHit(DTEnums::DTCellSide lrSide) const;
117 
118 
120  std::pair<const DTRecHit1D*, const DTRecHit1D*> componentRecHits() const;
121 
122 
123  private:
124 
127 
128  // The two rechits
131 
132 };
133 
134 
136 std::ostream& operator<<(std::ostream& os, const DTRecHit1DPair& hit);
137 
138 #endif
float digiTime() const
Return the digi time (ns) used to build the rechits.
DTCellSide
Which side of the DT cell.
Definition: DTEnums.h:15
const DTRecHit1D * componentRecHit(DTEnums::DTCellSide lrSide) const
Return the left/right DTRecHit1D.
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Definition: ALILine.cc:187
virtual LocalError localPositionError() const
DTRecHit1D theLeftHit
bool operator!=(const DTRecHit1DPair &hit) const
void setPositionAndError(DTEnums::DTCellSide lrside, const LocalPoint &point, const LocalError &err)
virtual DetId geographicalId() const
Return the detId of the Det (a DTLayer).
virtual std::vector< const TrackingRecHit * > recHits() const
float digiTime() const
Return the time (ns) of the digi used to build the rechit.
Definition: DTRecHit1D.h:113
bool operator==(const DTRecHit1DPair &hit) const
Comparison operator, based on the wireId and the digi time.
Definition: DTDigi.h:17
DTRecHit1D theRightHit
Definition: DetId.h:18
virtual TrackingRecHit const * hit() const
void setPosition(DTEnums::DTCellSide lrside, const LocalPoint &point)
DTRecHit1DPair()
Default constructor. Needed to write the RecHit into a STL container.
DTWireId wireId() const
virtual DTRecHit1DPair * clone() const
virtual ~DTRecHit1DPair()
Destructor.
std::pair< const DTRecHit1D *, const DTRecHit1D * > componentRecHits() const
Get the left and right 1D rechits (first and second respectively).
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5
virtual LocalPoint localPosition() const
DTWireId wireId() const
Return the wireId.
Definition: DTRecHit1D.h:107