CMS 3D CMS Logo

List of all members | Public Member Functions
l1t::MP7Payload Class Reference

#include <Block.h>

Inheritance diagram for l1t::MP7Payload:
l1t::Payload

Public Member Functions

BlockHeader getHeader () override
 
unsigned getHeaderSize () const override
 
 MP7Payload (const uint32_t *data, const uint32_t *end, bool legacy_mc=false)
 
- Public Member Functions inherited from l1t::Payload
virtual unsigned getAlgorithmFWVersion () const
 
virtual std::unique_ptr< BlockgetBlock ()
 
virtual unsigned getInfrastructureFWVersion () const
 
 Payload (const uint32_t *data, const uint32_t *end)
 
virtual ~Payload ()
 

Additional Inherited Members

- Protected Attributes inherited from l1t::Payload
unsigned algo_
 
const uint32_t * data_
 
const uint32_t * end_
 
unsigned infra_
 

Detailed Description

Definition at line 94 of file Block.h.

Constructor & Destructor Documentation

l1t::MP7Payload::MP7Payload ( const uint32_t *  data,
const uint32_t *  end,
bool  legacy_mc = false 
)

Definition at line 102 of file Block.cc.

References l1t::Payload::algo_, l1t::Payload::data_, l1t::Payload::infra_, and LogTrace.

102  : Payload(data, end)
103  {
104  // For legacy MC (74 first MC campaigns) skip one empty word that was
105  // reserved for the header. With data, read out infrastructure
106  // version and algorithm version.
107  if (legacy_mc) {
108  LogTrace("L1T") << "Skipping " << std::hex << *data_;
109  ++data_;
110  } else {
111  infra_ = data_[0];
112  algo_ = data_[1];
113  data_ += 2;
114  }
115  }
#define end
Definition: vmac.h:39
unsigned infra_
Definition: Block.h:91
#define LogTrace(id)
const uint32_t * data_
Definition: Block.h:87
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
unsigned algo_
Definition: Block.h:90
Payload(const uint32_t *data, const uint32_t *end)
Definition: Block.h:76

Member Function Documentation

BlockHeader l1t::MP7Payload::getHeader ( )
overridevirtual

Implements l1t::Payload.

Definition at line 118 of file Block.cc.

References l1t::Payload::data_, and LogTrace.

119  {
120  LogTrace("L1T") << "Getting header from " << std::hex << std::setw(8) << *data_;
121 
122  return BlockHeader(data_++);
123  }
#define LogTrace(id)
const uint32_t * data_
Definition: Block.h:87
unsigned l1t::MP7Payload::getHeaderSize ( ) const
inlineoverridevirtual

Implements l1t::Payload.

Definition at line 97 of file Block.h.

97 { return 1; };