CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_1/src/EventFilter/CSCRawToDigi/interface/CSCDCCHeader.h

Go to the documentation of this file.
00001 /* CSCDCCHeader 9/24/04 A.Tumanov
00002  * documented at  https://www.physics.ohio-state.edu/~cms/ddu/ddu2.html
00003  */
00004 
00005 #ifndef CSCDCCHeader_h
00006 #define CSCDCCHeader_h
00007 
00008 #include <string> //for bzero
00009 #include "DataFormats/CSCDigi/interface/CSCDCCStatusDigi.h"
00010 
00011 class CSCDCCHeader {
00012 
00013  public:
00014   CSCDCCHeader(int bx, int l1a, int sourceId, int version=0);
00015   CSCDCCHeader();
00016   CSCDCCHeader(const CSCDCCStatusDigi & digi);
00017 
00018   int getCDFEventNumber() const; 
00019   int getCDFSourceId() const; 
00020   int getCDFFOV() const;
00021   int getCDFEventType() const;
00022   int getCDFBunchCounter() const; 
00023   void setDAV(int dduSlot);
00024   bool check() const { return true/*dcc_code1==0xD9 && dcc_code2==0x97*/;}
00025   unsigned short * data() {return (short unsigned *)word;}
00026   static unsigned sizeInWords() {return 8;}
00027 
00028   // gets some data filled by the event data
00029   friend class CSCDDUEventData;
00030 
00031  private:
00032   unsigned long long word[2];
00033   
00034   /*
00035   //first line of DCC header definded by CDF (common data format)
00037   unsigned BOE_1       : 4;
00038   unsigned Evt_ty      : 4;
00039   unsigned LV1_id      : 24;
00040   unsigned BX_id       : 12;
00041   unsigned Source_id   : 12;
00042   unsigned FOV         : 4;
00043   unsigned Hx          : 3;
00044   unsigned dollardollar: 1;
00045 
00048   unsigned dcc_code1     : 8;
00049   unsigned orbit_counter : 32;
00050   unsigned fifo_status   : 16;
00052   unsigned dcc_code2     : 8;
00053   
00054   */
00055 
00056 };
00057 #endif