CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10/src/DataFormats/CSCDigi/interface/CSCCLCTDigi.h

Go to the documentation of this file.
00001 #ifndef CSCDigi_CSCCLCTDigi_h
00002 #define CSCDigi_CSCCLCTDigi_h
00003 
00014 #include <boost/cstdint.hpp>
00015 #include <iosfwd>
00016 
00017 class CSCCLCTDigi {
00018 
00019  public:
00020 
00022   CSCCLCTDigi(const int valid, const int quality, const int pattern,
00023               const int striptype, const int bend, const int strip,
00024               const int cfeb, const int bx, const int trknmb = 0, const int fullbx=0);
00026   CSCCLCTDigi();
00027 
00029   void clear();
00030 
00032   bool isValid()     const {return valid_ ;}
00033 
00035   int getQuality()   const {return quality_ ;}
00036 
00038   int getPattern()   const {return pattern_ ;}
00039 
00041   int getStripType() const {return striptype_ ;}
00042 
00044   int getBend()      const {return bend_ ;}
00045 
00047   int getStrip()     const {return strip_ ;}
00048 
00050   int getCFEB()      const {return cfeb_ ;}
00051 
00053   int getBX()        const {return bx_ ;}
00054 
00056   int getTrknmb()    const {return trknmb_ ;}
00057 
00067   int getKeyStrip()  const {
00068     int keyStrip = cfeb_ * 32 + strip_;
00069     return keyStrip;
00070   }
00071 
00073   void setTrknmb(const uint16_t number) {trknmb_ = number;}
00074 
00076   int getFullBX() const {return fullbx_ ;}
00077 
00079   void setFullBX(const uint16_t fullbx) {fullbx_ = fullbx;}
00080 
00081 
00085   bool operator >  (const CSCCLCTDigi&) const;
00086 
00088   bool operator == (const CSCCLCTDigi&) const;
00089 
00091   bool operator != (const CSCCLCTDigi&) const;
00092 
00094   void print() const;
00095 
00096  private:
00097 
00098   uint16_t valid_      ;
00099   uint16_t quality_    ;
00100   uint16_t pattern_    ;
00101   uint16_t striptype_  ; // not used since mid-2008
00102   uint16_t bend_       ;
00103   uint16_t strip_      ;
00104   uint16_t cfeb_       ;
00105   uint16_t bx_         ;
00106   uint16_t trknmb_     ;
00107   uint16_t fullbx_     ;
00108 
00109 };
00110 
00111 std::ostream & operator<<(std::ostream & o, const CSCCLCTDigi& digi);
00112 
00113 #endif