Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:04:33

0001 // Class for AMC13 Trailer
0002 
0003 #ifndef __l1t_emtf_AMC13Trailer_h__
0004 #define __l1t_emtf_AMC13Trailer_h__
0005 
0006 #include <vector>
0007 #include <cstdint>
0008 
0009 namespace l1t {
0010   namespace emtf {
0011     class AMC13Trailer {
0012     public:
0013       explicit AMC13Trailer(uint64_t dataword);
0014 
0015       AMC13Trailer()
0016           : evt_lgth(-99),
0017             crc16(-99),
0018             evt_stat(-99),
0019             tts(-99),
0020             c(-99),
0021             f(-99),
0022             t(-99),
0023             r(-99),
0024             format_errors(0),
0025             dataword(-99){};
0026 
0027       virtual ~AMC13Trailer(){};
0028 
0029       void set_evt_lgth(int bits) { evt_lgth = bits; }
0030       void set_crc16(int bits) { crc16 = bits; }
0031       void set_evt_stat(int bits) { evt_stat = bits; }
0032       void set_tts(int bits) { tts = bits; }
0033       void set_c(int bits) { c = bits; }
0034       void set_f(int bits) { f = bits; }
0035       void set_t(int bits) { t = bits; }
0036       void set_r(int bits) { r = bits; }
0037       void add_format_error() { format_errors += 1; }
0038       void set_dataword(uint64_t bits) { dataword = bits; }
0039 
0040       int Evt_lgth() const { return evt_lgth; }
0041       int CRC16() const { return crc16; }
0042       int Evt_stat() const { return evt_stat; }
0043       int TTS() const { return tts; }
0044       int C() const { return c; }
0045       int F() const { return f; }
0046       int T() const { return t; }
0047       int R() const { return r; }
0048       int Format_errors() const { return format_errors; }
0049       uint64_t Dataword() const { return dataword; }
0050 
0051     private:
0052       int evt_lgth;
0053       int crc16;
0054       int evt_stat;
0055       int tts;
0056       int c;
0057       int f;
0058       int t;
0059       int r;
0060       int format_errors;
0061       uint64_t dataword;
0062 
0063     };  // End class AMC13Trailer
0064   }     // End namespace emtf
0065 }  // End namespace l1t
0066 
0067 #endif /* define __l1t_emtf_AMC13Trailer_h__ */