CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch1/src/EventFilter/FEDInterface/interface/FED1023.h

Go to the documentation of this file.
00001 #ifndef EVF_FED1023_H
00002 #define EVF_FED1023_H
00003 
00004 #include "EventFilter/FEDInterface/interface/FEDConstants.h"
00005 
00006 namespace evf{
00007   namespace fedinterface{
00008     
00010     //FED1023 format definition
00011     //Offsets go right to left - in BYTES !!!
00012     //LW\SB 63..............................32 31..............................0
00013     //00    <=======================FED HEADER ================================>
00014     //01    <63-44  PCId   ><43-32  RBInst#  > <31-0    RB event count         >
00015     //02    <63-00  Reserved                                                   >
00016     //03    <63-00  In wallclock time in RB                                    >
00017     //04    <63-48  EPPId  ><47-32  EPinst#  > <31-0    EP event Id            >
00018     //05    <63-48  EP VER ><47-32 CMSSW VER > <31-0    EP event count         >
00019     //06    <63-00  EP History                                                 >
00020     //07    <63-00  HLT algo bits 1                                            >
00021     //08    <63-00  HLT algo bits 2                                            >
00022     //09    <63-00  HLT algo bits 3                                            >
00023     //0a    <63-00  Reserved                                                   >
00024     //0b    <63-00  Reserved                                                   >
00025     //0c    <63-00  Out wallclock time from EP                                 >
00026     //0d    <=======================FED TRAILER ===============================>
00028     const unsigned int EVFFED_ID              = 1023;
00029     const unsigned int EVFFED_VERSION         = 0x0;
00030     const unsigned int EVFFED_TOTALSIZE       = 112; // in bytes
00031     const unsigned int EVFFED_LENGTH          = EVFFED_TOTALSIZE/evtn::SLINK_WORD_SIZE; // in SLINK WORDS
00032     const unsigned int EVFFED_PAYLOAD_OFFSET  = evtn::FED_HEADER_SIZE;
00033     const unsigned int EVFFED_RBEVCNT_OFFSET  = EVFFED_PAYLOAD_OFFSET;
00034     const unsigned int EVFFED_RBIDENT_OFFSET  = EVFFED_RBEVCNT_OFFSET + evtn::SLINK_HALFWORD_SIZE;
00035     const unsigned int EVFFED_RBPCIDE_MASK    = 0x000fffff;
00036     const unsigned int EVFFED_RBPCIDE_SHIFT   = 12;
00037     const unsigned int EVFFED_RBINSTA_MASK    = 0x00000fff;
00038     const unsigned int EVFFED_RBINSTA_SHIFT   = 0;
00039     const unsigned int EVFFED_RBWCTIM_OFFSET  = EVFFED_RBIDENT_OFFSET + 3 * evtn::SLINK_HALFWORD_SIZE;
00040     const unsigned int EVFFED_EPEVENT_OFFSET  = EVFFED_RBWCTIM_OFFSET + evtn::SLINK_WORD_SIZE;
00041     const unsigned int EVFFED_EPIDENT_OFFSET  = EVFFED_EPEVENT_OFFSET + evtn::SLINK_HALFWORD_SIZE;
00042     const unsigned int EVFFED_EPPCIDE_MASK    = 0x000fffff;
00043     const unsigned int EVFFED_EPPCIDE_SHIFT   = 12; 
00044     const unsigned int EVFFED_EPINSTA_MASK    = 0x00000fff;
00045     const unsigned int EVFFED_EPINSTA_SHIFT   = 0;
00046     const unsigned int EVFFED_EPEVTCT_OFFSET  = EVFFED_EPIDENT_OFFSET + evtn::SLINK_HALFWORD_SIZE;
00047     const unsigned int EVFFED_EPVERSN_OFFSET  = EVFFED_EPEVTCT_OFFSET + evtn::SLINK_HALFWORD_SIZE;
00048     const unsigned int EVFFED_EPVERSN_MASK    = 0xffff0000;
00049     const unsigned int EVFFED_EPVERSN_SHIFT   = 16;
00050     const unsigned int EVFFED_CMSSWVN_MASK    = 0x0000ffff;
00051     const unsigned int EVFFED_CMSSWVN_SHIFT   = 0;
00052     const unsigned int EVFFED_EPHISTO_OFFSET  = EVFFED_EPVERSN_OFFSET + evtn::SLINK_HALFWORD_SIZE;
00053     const unsigned int EVFFED_EPHLTA1_OFFSET  = EVFFED_EPHISTO_OFFSET + evtn::SLINK_WORD_SIZE;
00054     const unsigned int EVFFED_EPHLTA2_OFFSET  = EVFFED_EPHLTA1_OFFSET + evtn::SLINK_WORD_SIZE;
00055     const unsigned int EVFFED_EPHLTA3_OFFSET  = EVFFED_EPHLTA2_OFFSET + evtn::SLINK_WORD_SIZE;
00056     const unsigned int EVFFED_EPWCTIM_OFFSET  = EVFFED_EPHLTA3_OFFSET + 3 * evtn::SLINK_WORD_SIZE;
00057   }
00058 }
00059 #endif