Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-09-07 04:36:07

0001 #ifndef EventFilter_CSCRawToDigi_CSCVDMBHeaderFormat_h
0002 #define EventFilter_CSCRawToDigi_CSCVDMBHeaderFormat_h
0003 
0004 #include <cassert>
0005 #include <iosfwd>
0006 #include <cstring>  // bzero
0007 
0008 class CSCVDMBHeaderFormat {
0009 public:
0010   virtual ~CSCVDMBHeaderFormat() {}
0011   /*
0012   void init() {
0013     bzero(this, sizeInWords()*2);
0014   }
0015 */
0016 
0017   virtual bool cfebAvailable(unsigned icfeb) = 0;
0018 
0019   virtual void addCFEB(int icfeb) = 0;
0020   virtual void addNCLCT() = 0;
0021   virtual void addNALCT() = 0;
0022   virtual void setBXN(int bxn) = 0;
0023   virtual void setL1A(int l1a) = 0;
0024   virtual void setL1A24(int l1a) = 0;
0025   virtual void setCrateAddress(int crate, int dmbId) = 0;
0026   virtual void setdmbID(int newDMBID) = 0;
0027   virtual void setdmbVersion(unsigned int version) = 0;
0028 
0029   virtual unsigned cfebActive() const = 0;
0030   virtual unsigned crateID() const = 0;
0031   virtual unsigned dmbID() const = 0;
0032   virtual unsigned bxn() const = 0;
0033   virtual unsigned bxn12() const = 0;
0034   virtual unsigned l1a() const = 0;
0035   virtual unsigned l1a24() const = 0;
0036   virtual unsigned cfebAvailable() const = 0;
0037   virtual unsigned nalct() const = 0;
0038   virtual unsigned nclct() const = 0;
0039   virtual unsigned cfebMovlp() const = 0;
0040   virtual unsigned dmbCfebSync() const = 0;
0041   virtual unsigned activeDavMismatch() const = 0;
0042   virtual unsigned format_version() const = 0;
0043 
0044   virtual unsigned sizeInWords() const = 0;
0045 
0046   virtual bool check() const = 0;
0047 
0048   virtual unsigned short* data() = 0;
0049   virtual unsigned short* data() const = 0;
0050 
0051   //ostream & operator<<(ostream &, const CSCVDMBHeaderFormat &);
0052 };
0053 
0054 #endif