Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-06-22 02:23:37

0001 #ifndef L1ScoutingRawToDigi_blocks_h
0002 #define L1ScoutingRawToDigi_blocks_h
0003 
0004 #include <cstdint>
0005 
0006 namespace l1ScoutingRun3 {
0007 
0008   namespace ugmt {
0009 
0010     struct muon {
0011       uint32_t f;
0012       uint32_t s;
0013       uint32_t extra;
0014     };
0015 
0016     struct block {
0017       uint32_t bx;
0018       uint32_t orbit;
0019       muon mu[16];
0020     };
0021   }  // namespace ugmt
0022 
0023   namespace demux {
0024 
0025     // unrolled DMA block
0026     struct dmaBlock {
0027       uint32_t header;
0028       uint32_t bx;
0029       uint32_t orbit;
0030       uint32_t link0;
0031       uint32_t jet2[6];
0032       uint32_t link1;
0033       uint32_t jet1[6];
0034       uint32_t link2;
0035       uint32_t egamma2[6];
0036       uint32_t link3;
0037       uint32_t egamma1[6];
0038       uint32_t link4;
0039       uint32_t empty[6];
0040       uint32_t link5;
0041       uint32_t sum[6];
0042       uint32_t link6;
0043       uint32_t tau2[6];
0044       uint32_t link7;
0045       uint32_t tau1[6];
0046     };
0047 
0048     struct caloObjTcpBlock {
0049       uint32_t header;
0050       uint32_t bx;
0051       uint32_t orbit;
0052       uint32_t obj[12];
0053     };
0054 
0055     struct caloSumTcpBlock {
0056       uint32_t bx;
0057       uint32_t orbit;
0058       uint32_t sum[6];
0059     };
0060 
0061   }  // namespace demux
0062 
0063   namespace bmtf {
0064     struct block {
0065       uint32_t header;
0066       uint32_t bx;
0067       uint32_t orbit;
0068       uint64_t stub[8];
0069     };
0070   }  // namespace bmtf
0071 
0072 }  // namespace l1ScoutingRun3
0073 #endif  // L1ScoutingRawToDigi_blocks_h