Go to the documentation of this file.00001 #ifndef DTRecHit_DTRecHit1D_H
00002 #define DTRecHit_DTRecHit1D_H
00003
00017
00018
00019 #include "DataFormats/TrackingRecHit/interface/RecHit1D.h"
00020
00021 #include "DataFormats/DTRecHit/interface/DTEnums.h"
00022 #include "DataFormats/MuonDetId/interface/DTWireId.h"
00023
00024
00025 class DTLayer;
00026 class GeomDet;
00027
00028 class DTRecHit1D : public RecHit1D {
00029 public:
00030
00032 DTRecHit1D(const DTWireId& wireId,
00033 DTEnums::DTCellSide lr,
00034 float digiTime);
00035
00037 DTRecHit1D();
00038
00043 DTRecHit1D(const DTWireId& wireId,
00044 DTEnums::DTCellSide lr,
00045 float digiTime,
00046 const LocalPoint& pos);
00047
00048
00050 DTRecHit1D(const DTWireId& wireId,
00051 DTEnums::DTCellSide lr,
00052 float digiTime,
00053 const LocalPoint& pos,
00054 const LocalError& err);
00055
00056
00058 virtual ~DTRecHit1D();
00059
00060
00062 virtual LocalPoint localPosition() const {
00063 return theLocalPosition;
00064 }
00065
00066
00068 virtual LocalError localPositionError() const {
00069 return theLocalError;
00070 }
00071
00072 virtual DTRecHit1D* clone() const;
00073
00074
00076 virtual std::vector<const TrackingRecHit*> recHits() const;
00077
00078
00080 virtual std::vector<TrackingRecHit*> recHits();
00081
00082
00084 DTEnums::DTCellSide lrSide() const {
00085 return theLRSide;
00086 }
00087
00088
00090 void setPosition(LocalPoint pos) {
00091 theLocalPosition = pos;
00092 }
00093
00094
00096 void setError(LocalError err) {
00097 theLocalError = err;
00098 }
00099
00100
00102 void setPositionAndError(LocalPoint pos, LocalError err) {
00103 theLocalPosition = pos;
00104 theLocalError = err;
00105 }
00106
00107
00109 DTWireId wireId() const {
00110 return theWireId;
00111 }
00112
00113
00115 float digiTime() const {
00116 return theDigiTime;
00117 }
00118
00119
00121 bool operator==(const DTRecHit1D& hit) const;
00122
00123 private:
00124
00125 DTWireId theWireId;
00126
00127
00128 DTEnums::DTCellSide theLRSide;
00129
00130
00131 float theDigiTime;
00132
00133
00134 LocalPoint theLocalPosition;
00135 LocalError theLocalError;
00136
00137
00138 };
00139 #endif
00140
00141
00143 std::ostream& operator<<(std::ostream& os, const DTRecHit1D& hit);
00144
00145