Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:10:23

0001 #ifndef EventFilter_CSCRawToDigi_CSCVDMBTrailerFormat_h
0002 #define EventFilter_CSCRawToDigi_CSCVDMBTrailerFormat_h
0003 
0004 #include <cassert>
0005 #include <iosfwd>
0006 #include <cstring>  // bzero
0007 
0008 class CSCDMBHeader;
0009 
0010 class CSCVDMBTrailerFormat {
0011 public:
0012   virtual ~CSCVDMBTrailerFormat(){};
0013   /*
0014   void init() {
0015     bzero(this, sizeInWords()*2);
0016   }
0017 */
0018   virtual void setEventInformation(const CSCDMBHeader &) = 0;
0019 
0020   virtual unsigned crateID() const = 0;
0021   virtual unsigned dmbID() const = 0;
0022 
0023   virtual unsigned dmb_l1a() const = 0;
0024   virtual unsigned dmb_bxn() const = 0;
0025 
0026   virtual unsigned alct_endtimeout() const = 0;
0027   virtual unsigned tmb_endtimeout() const = 0;
0028   virtual unsigned cfeb_endtimeout() const = 0;
0029 
0030   virtual unsigned alct_starttimeout() const = 0;
0031   virtual unsigned tmb_starttimeout() const = 0;
0032   virtual unsigned cfeb_starttimeout() const = 0;
0033 
0034   virtual unsigned cfeb_movlp() const = 0;
0035   virtual unsigned dmb_l1pipe() const = 0;
0036 
0037   virtual unsigned alct_empty() const = 0;
0038   virtual unsigned tmb_empty() const = 0;
0039   virtual unsigned cfeb_empty() const = 0;
0040 
0041   virtual unsigned alct_half() const = 0;
0042   virtual unsigned tmb_half() const = 0;
0043   virtual unsigned cfeb_half() const = 0;
0044 
0045   virtual unsigned alct_full() const = 0;
0046   virtual unsigned tmb_full() const = 0;
0047   virtual unsigned cfeb_full() const = 0;
0048 
0049   virtual unsigned crc22() const = 0;
0050   virtual unsigned crc_lo_parity() const = 0;
0051   virtual unsigned crc_hi_parity() const = 0;
0052 
0053   virtual unsigned short *data() = 0;
0054   virtual unsigned short *data() const = 0;
0055 
0056   virtual bool check() const = 0;
0057 
0058   virtual unsigned sizeInWords() const = 0;
0059 
0060   //ostream & operator<<(ostream &, const CSCVDMBTrailerFormat &);
0061 };
0062 
0063 #endif