File indexing completed on 2023-10-25 09:39:21
0001 #include <cstdint>
0002
0003
0004 #ifndef __l1t_emtf_EventHeader_h__
0005 #define __l1t_emtf_EventHeader_h__
0006
0007 namespace l1t {
0008 namespace emtf {
0009 class EventHeader {
0010 public:
0011 explicit EventHeader(uint64_t dataword);
0012
0013 EventHeader()
0014 : l1a(-99),
0015 l1a_BXN(-99),
0016 sp_TS(-99),
0017 endcap(-99),
0018 sector(-99),
0019 sp_ersv(-99),
0020 sp_addr(-99),
0021 tbin(-99),
0022 ddm(-99),
0023 spa(-99),
0024 rpca(-99),
0025 skip(-99),
0026 rdy(-99),
0027 bsy(-99),
0028 osy(-99),
0029 wof(-99),
0030 me1a(-99),
0031 me1b(-99),
0032 me2(-99),
0033 me3(-99),
0034 me4(-99),
0035 cppf(-99),
0036 cppf_crc(-99),
0037 gem(-99),
0038 gem_crc(-99),
0039 format_errors(0),
0040 dataword(-99){};
0041
0042 virtual ~EventHeader(){};
0043
0044 void set_l1a(int bits) { l1a = bits; }
0045 void set_l1a_BXN(int bits) { l1a_BXN = bits; }
0046 void set_sp_TS(int bits) { sp_TS = bits; }
0047 void set_endcap(int bits) { endcap = bits; }
0048 void set_sector(int bits) { sector = bits; }
0049 void set_sp_ersv(int bits) { sp_ersv = bits; }
0050 void set_sp_addr(int bits) { sp_addr = bits; }
0051 void set_tbin(int bits) { tbin = bits; }
0052 void set_ddm(int bits) { ddm = bits; }
0053 void set_spa(int bits) { spa = bits; }
0054 void set_rpca(int bits) { rpca = bits; }
0055 void set_skip(int bits) { skip = bits; }
0056 void set_rdy(int bits) { rdy = bits; }
0057 void set_bsy(int bits) { bsy = bits; }
0058 void set_osy(int bits) { osy = bits; }
0059 void set_wof(int bits) { wof = bits; }
0060 void set_me1a(int bits) { me1a = bits; }
0061 void set_me1b(int bits) { me1b = bits; }
0062 void set_me2(int bits) { me2 = bits; }
0063 void set_me3(int bits) { me3 = bits; }
0064 void set_me4(int bits) { me4 = bits; }
0065 void set_cppf(int bits) { cppf = bits; }
0066 void set_cppf_crc(int bits) { cppf_crc = bits; }
0067 void set_gem(int bits) { gem = bits; }
0068 void set_gem_crc(int bits) { gem_crc = bits; }
0069 void add_format_error() { format_errors += 1; }
0070 void set_dataword(uint64_t bits) { dataword = bits; }
0071
0072 int L1A() const { return l1a; }
0073 int L1A_BXN() const { return l1a_BXN; }
0074 int SP_TS() const { return sp_TS; }
0075 int Endcap() const { return endcap; }
0076 int Sector() const { return sector; }
0077 int SP_ersv() const { return sp_ersv; }
0078 int SP_addr() const { return sp_addr; }
0079 int TBIN() const { return tbin; }
0080 int DDM() const { return ddm; }
0081 int SPa() const { return spa; }
0082 int RPCa() const { return rpca; }
0083 int Skip() const { return skip; }
0084 int Rdy() const { return rdy; }
0085 int BSY() const { return bsy; }
0086 int OSY() const { return osy; }
0087 int WOF() const { return wof; }
0088 int ME1a() const { return me1a; }
0089 int ME1b() const { return me1b; }
0090 int ME2() const { return me2; }
0091 int ME3() const { return me3; }
0092 int ME4() const { return me4; }
0093 int CPPF() const { return cppf; }
0094 int CPPF_CRC() const { return cppf_crc; }
0095 int GEM() const { return gem; }
0096 int GEM_CRC() const { return gem_crc; }
0097 int Format_errors() const { return format_errors; }
0098 uint64_t Dataword() const { return dataword; }
0099
0100 private:
0101 int l1a;
0102 int l1a_BXN;
0103 int sp_TS;
0104 int endcap;
0105 int sector;
0106 int sp_ersv;
0107 int sp_addr;
0108 int tbin;
0109 int ddm;
0110 int spa;
0111 int rpca;
0112 int skip;
0113 int rdy;
0114 int bsy;
0115 int osy;
0116 int wof;
0117 int me1a;
0118 int me1b;
0119 int me2;
0120 int me3;
0121 int me4;
0122 int cppf;
0123 int cppf_crc;
0124 int gem;
0125 int gem_crc;
0126 int format_errors;
0127 uint64_t dataword;
0128
0129 };
0130 }
0131 }
0132
0133 #endif