00001 #ifndef CSCRecHitD_CSCStripHit_H 00002 #define CSCRecHitD_CSCStripHit_H 00003 00011 #include "DataFormats/MuonDetId/interface/CSCDetId.h" 00012 00013 #include <vector> 00014 #include <iosfwd> 00015 00016 class CSCStripHit 00017 { 00018 00019 public: 00020 00021 typedef std::vector<float> StripHitADCContainer; 00022 typedef std::vector<int> ChannelContainer; 00023 00024 CSCStripHit(); 00025 CSCStripHit( const CSCDetId& id, 00026 const float& sHitPos, 00027 const int& tmax, 00028 const ChannelContainer& strips, 00029 const StripHitADCContainer& s_adc, 00030 const StripHitADCContainer& s_adcRaw, 00031 const int& numberOfConsecutiveStrips, 00032 const int& closestMaximum, 00033 const short int& deadStrip); 00034 00035 ~CSCStripHit(); 00036 00038 CSCStripHit* clone() const { return new CSCStripHit( *this ); } 00039 00041 CSCDetId cscDetId() const { return theDetId; } 00042 00044 float sHitPos() const { return theStripHitPosition; } 00045 00047 int tmax() const { return theStripHitTmax; } 00048 00050 const ChannelContainer& stripsTotal() const {return theStrips;} 00051 00053 const ChannelContainer& strips() const {return theStripsLowBits;} 00054 00056 const ChannelContainer& stripsl1a() const {return theStripsHighBits;} 00057 00059 const StripHitADCContainer& s_adc() const { return theStripHitADCs; } 00060 00062 const StripHitADCContainer& s_adcRaw() const { return theStripHitRawADCs; } 00063 00065 int numberOfConsecutiveStrips() const { return theConsecutiveStrips; } 00066 00068 int closestMaximum() const { return theClosestMaximum; } 00069 00071 short int deadStrip() const {return theDeadStrip; }; 00072 00074 void print() const; 00075 00076 private: 00077 00078 CSCDetId theDetId; 00079 float theStripHitPosition; 00080 int theStripHitTmax; 00081 ChannelContainer theStrips; 00082 ChannelContainer theStripsLowBits; 00083 ChannelContainer theStripsHighBits; 00084 StripHitADCContainer theStripHitADCs; 00085 StripHitADCContainer theStripHitRawADCs; 00086 int theConsecutiveStrips; 00087 int theClosestMaximum; 00088 short int theDeadStrip; 00089 00090 }; 00091 00092 00093 00094 #endif 00095