CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions
l1t::MP7Payload Class Reference

#include <Block.h>

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

Public Member Functions

virtual BlockHeader getHeader () override
 
virtual 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
 
std::auto_ptr< BlockgetBlock ()
 
virtual unsigned getInfrastructureFWVersion () const
 
 Payload (const uint32_t *data, const uint32_t *end)
 

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 90 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 51 of file Block.cc.

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

51  : Payload(data, end)
52  {
53  // For legacy MC (74 first MC campaigns) skip one empty word that was
54  // reserved for the header. With data, read out infrastructure
55  // version and algorithm version.
56  if (legacy_mc) {
57  LogTrace("L1T") << "Skipping " << std::hex << *data_;
58  ++data_;
59  } else {
60  infra_ = data_[0];
61  algo_ = data_[1];
62  data_ += 2;
63  }
64  }
#define end
Definition: vmac.h:37
unsigned infra_
Definition: Block.h:87
#define LogTrace(id)
const uint32_t * data_
Definition: Block.h:83
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
unsigned algo_
Definition: Block.h:86
Payload(const uint32_t *data, const uint32_t *end)
Definition: Block.h:72

Member Function Documentation

BlockHeader l1t::MP7Payload::getHeader ( )
overridevirtual

Implements l1t::Payload.

Definition at line 67 of file Block.cc.

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

68  {
69  LogTrace("L1T") << "Getting header from " << std::hex << std::setw(8) << *data_;
70 
71  return BlockHeader(data_++);
72  }
#define LogTrace(id)
const uint32_t * data_
Definition: Block.h:83
virtual unsigned l1t::MP7Payload::getHeaderSize ( ) const
inlineoverridevirtual

Implements l1t::Payload.

Definition at line 93 of file Block.h.

93 { return 1; };