CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes | Static Private Attributes
l1t::BlockHeader Class Reference

#include <Block.h>

Public Member Functions

 BlockHeader (unsigned int id, unsigned int size, unsigned int capID=0, unsigned int flags=0, block_t type=MP7)
 
 BlockHeader (const uint32_t *data)
 
unsigned int getCapID () const
 
unsigned int getFlags () const
 
unsigned int getID () const
 
unsigned int getSize () const
 
block_t getType () const
 
bool operator< (const BlockHeader &o) const
 
uint32_t raw () const
 

Private Attributes

unsigned int capID_
 
unsigned int flags_
 
unsigned int id_
 
unsigned int size_
 
block_t type_
 

Static Private Attributes

static constexpr unsigned capID_mask = 0xff
 
static constexpr unsigned capID_shift = 8
 
static constexpr unsigned CTP7_mask = 0xffff
 
static constexpr unsigned CTP7_shift = 0
 
static constexpr unsigned flags_mask = 0xff
 
static constexpr unsigned flags_shift = 0
 
static constexpr unsigned ID_mask = 0xff
 
static constexpr unsigned ID_shift = 24
 
static constexpr unsigned size_mask = 0xff
 
static constexpr unsigned size_shift = 16
 

Detailed Description

Definition at line 29 of file Block.h.

Constructor & Destructor Documentation

◆ BlockHeader() [1/2]

l1t::BlockHeader::BlockHeader ( unsigned int  id,
unsigned int  size,
unsigned int  capID = 0,
unsigned int  flags = 0,
block_t  type = MP7 
)
inline

Definition at line 31 of file Block.h.

32  : id_(id), size_(size), capID_(capID), flags_(flags), type_(type){};
size
Write out results.
block_t type_
Definition: Block.h:67
unsigned int flags_
Definition: Block.h:66
unsigned int size_
Definition: Block.h:64
unsigned int capID_
Definition: Block.h:65
unsigned int id_
Definition: Block.h:63

◆ BlockHeader() [2/2]

l1t::BlockHeader::BlockHeader ( const uint32_t *  data)
inline

Definition at line 34 of file Block.h.

35  : id_((data[0] >> ID_shift) & ID_mask),
36  size_((data[0] >> size_shift) & size_mask),
37  capID_((data[0] >> capID_shift) & capID_mask),
38  flags_((data[0] >> flags_shift) & flags_mask),
39  type_(MP7){};
static constexpr unsigned capID_shift
Definition: Block.h:58
Definition: Block.h:11
static constexpr unsigned capID_mask
Definition: Block.h:59
static constexpr unsigned flags_mask
Definition: Block.h:61
static constexpr unsigned size_shift
Definition: Block.h:56
static constexpr unsigned flags_shift
Definition: Block.h:60
block_t type_
Definition: Block.h:67
unsigned int flags_
Definition: Block.h:66
static constexpr unsigned ID_mask
Definition: Block.h:55
unsigned int size_
Definition: Block.h:64
unsigned int capID_
Definition: Block.h:65
static constexpr unsigned size_mask
Definition: Block.h:57
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
unsigned int id_
Definition: Block.h:63
static constexpr unsigned ID_shift
Definition: Block.h:54

Member Function Documentation

◆ getCapID()

unsigned int l1t::BlockHeader::getCapID ( ) const
inline

Definition at line 45 of file Block.h.

References capID_.

45 { return capID_; };
unsigned int capID_
Definition: Block.h:65

◆ getFlags()

unsigned int l1t::BlockHeader::getFlags ( ) const
inline

Definition at line 46 of file Block.h.

References flags_.

46 { return flags_; };
unsigned int flags_
Definition: Block.h:66

◆ getID()

unsigned int l1t::BlockHeader::getID ( ) const
inline

Definition at line 43 of file Block.h.

References id_.

Referenced by operator<().

43 { return id_; };
unsigned int id_
Definition: Block.h:63

◆ getSize()

unsigned int l1t::BlockHeader::getSize ( ) const
inline

Definition at line 44 of file Block.h.

References size_.

44 { return size_; };
unsigned int size_
Definition: Block.h:64

◆ getType()

block_t l1t::BlockHeader::getType ( void  ) const
inline

Definition at line 47 of file Block.h.

References type_.

47 { return type_; };
block_t type_
Definition: Block.h:67

◆ operator<()

bool l1t::BlockHeader::operator< ( const BlockHeader o) const
inline

Definition at line 41 of file Block.h.

References getID(), and EcalTangentSkim_cfg::o.

41 { return getID() < o.getID(); };
unsigned int getID() const
Definition: Block.h:43

◆ raw()

uint32_t l1t::BlockHeader::raw ( ) const

Definition at line 23 of file Block.cc.

References capID_, capID_mask, capID_shift, l1t::CTP7, flags_, flags_mask, flags_shift, id_, ID_mask, ID_shift, LogTrace, l1t::MP7, size_, size_mask, size_shift, and type_.

23  {
24  if (type_ == MP7) {
25  LogTrace("L1T") << "Writing MP7 link header";
26  return ((id_ & ID_mask) << ID_shift) | ((size_ & size_mask) << size_shift) |
28  } else if (type_ == CTP7) {
29  LogTrace("L1T") << "Writing CTP7 link header";
30  return flags_;
31  }
32  // if (type_ == MTF7) {
33  // LogTrace("L1T") << "Writing MTF7 link header";
34  // return ((id_ & ID_mask) << ID_shift) | ((size_ & size_mask) << size_shift) | ((capID_ & capID_mask) << capID_shift);
35  // }
36  LogTrace("L1T") << "Writing meaningless link header";
37  return 0;
38  }
static constexpr unsigned capID_shift
Definition: Block.h:58
Definition: Block.h:11
static constexpr unsigned capID_mask
Definition: Block.h:59
static constexpr unsigned flags_mask
Definition: Block.h:61
static constexpr unsigned size_shift
Definition: Block.h:56
static constexpr unsigned flags_shift
Definition: Block.h:60
block_t type_
Definition: Block.h:67
unsigned int flags_
Definition: Block.h:66
#define LogTrace(id)
static constexpr unsigned ID_mask
Definition: Block.h:55
unsigned int size_
Definition: Block.h:64
unsigned int capID_
Definition: Block.h:65
static constexpr unsigned size_mask
Definition: Block.h:57
unsigned int id_
Definition: Block.h:63
static constexpr unsigned ID_shift
Definition: Block.h:54

Member Data Documentation

◆ capID_

unsigned int l1t::BlockHeader::capID_
private

Definition at line 65 of file Block.h.

Referenced by getCapID(), and raw().

◆ capID_mask

constexpr unsigned l1t::BlockHeader::capID_mask = 0xff
staticprivate

Definition at line 59 of file Block.h.

Referenced by raw().

◆ capID_shift

constexpr unsigned l1t::BlockHeader::capID_shift = 8
staticprivate

Definition at line 58 of file Block.h.

Referenced by raw().

◆ CTP7_mask

constexpr unsigned l1t::BlockHeader::CTP7_mask = 0xffff
staticprivate

Definition at line 53 of file Block.h.

◆ CTP7_shift

constexpr unsigned l1t::BlockHeader::CTP7_shift = 0
staticprivate

Definition at line 52 of file Block.h.

◆ flags_

unsigned int l1t::BlockHeader::flags_
private

Definition at line 66 of file Block.h.

Referenced by getFlags(), and raw().

◆ flags_mask

constexpr unsigned l1t::BlockHeader::flags_mask = 0xff
staticprivate

Definition at line 61 of file Block.h.

Referenced by raw().

◆ flags_shift

constexpr unsigned l1t::BlockHeader::flags_shift = 0
staticprivate

Definition at line 60 of file Block.h.

Referenced by raw().

◆ id_

unsigned int l1t::BlockHeader::id_
private

Definition at line 63 of file Block.h.

Referenced by getID(), and raw().

◆ ID_mask

constexpr unsigned l1t::BlockHeader::ID_mask = 0xff
staticprivate

Definition at line 55 of file Block.h.

Referenced by raw().

◆ ID_shift

constexpr unsigned l1t::BlockHeader::ID_shift = 24
staticprivate

Definition at line 54 of file Block.h.

Referenced by raw().

◆ size_

unsigned int l1t::BlockHeader::size_
private

Definition at line 64 of file Block.h.

Referenced by getSize(), and raw().

◆ size_mask

constexpr unsigned l1t::BlockHeader::size_mask = 0xff
staticprivate

Definition at line 57 of file Block.h.

Referenced by raw().

◆ size_shift

constexpr unsigned l1t::BlockHeader::size_shift = 16
staticprivate

Definition at line 56 of file Block.h.

Referenced by raw().

◆ type_

block_t l1t::BlockHeader::type_
private