CMS 3D CMS Logo

Public Member Functions | Static Public Attributes | Private Attributes

L1GctJetCounts Class Reference

#include <L1GctJetCounts.h>

List of all members.

Public Member Functions

int16_t bx () const
 get bunch-crossing index
unsigned count (unsigned i) const
 get count by index
unsigned count00 () const
 get individual counts (for use with FWLite)
unsigned count01 () const
unsigned count02 () const
unsigned count03 () const
unsigned count04 () const
unsigned count05 () const
unsigned count06 () const
unsigned count07 () const
unsigned count08 () const
unsigned count09 () const
unsigned count10 () const
unsigned count11 () const
bool empty () const
 empty method
 L1GctJetCounts (std::vector< unsigned > counts)
 constructor for emulator
 L1GctJetCounts ()
 default constructor
 L1GctJetCounts (uint32_t data0, uint32_t data1)
 Constructor for unpacking.
 L1GctJetCounts (uint32_t data0, uint32_t data1, int16_t bx)
 L1GctJetCounts (std::vector< unsigned > counts, int16_t bx)
std::string name () const
 name method
int operator!= (const L1GctJetCounts &c) const
 inequality operator
int operator== (const L1GctJetCounts &c) const
 equality operator
uint32_t raw0 () const
 get raw word 0
uint32_t raw1 () const
 get raw word 1
virtual ~L1GctJetCounts ()
 destructor

Static Public Attributes

static const unsigned MAX_TOTAL_COUNTS = 12
static const unsigned MAX_TRUE_COUNTS = 6

Private Attributes

int16_t m_bx
uint32_t m_data0
uint32_t m_data1

Detailed Description

Author:
: Jim Brooke

Class to store the GCT jet count output

Definition at line 17 of file L1GctJetCounts.h.


Constructor & Destructor Documentation

L1GctJetCounts::L1GctJetCounts ( )

default constructor

Definition at line 17 of file L1GctJetCounts.cc.

                               :
  m_data0(0),
  m_data1(0),
  m_bx(0)
{

}
L1GctJetCounts::L1GctJetCounts ( uint32_t  data0,
uint32_t  data1 
)

Constructor for unpacking.

Expects three 5-bit jet counts in bits 14:0, and then three more 5-bit jet counts in bits 30:16 for both of the arguments; this is because in the raw format bit 31 is a BC0 flag, and bit 15 is always 1. Thus, jet count 0 should be in bits 4:0 of the data0 argument.

Definition at line 26 of file L1GctJetCounts.cc.

                                                             :
  m_data0(data0 & 0x7fff7fff), // Mask off bits 15 and 31 for better compression and consistency
  m_data1(data1 & 0x7fff7fff),  // with emulator constructor - these bits are not jet count data!
  m_bx(0)
{
}
L1GctJetCounts::L1GctJetCounts ( uint32_t  data0,
uint32_t  data1,
int16_t  bx 
)

Definition at line 34 of file L1GctJetCounts.cc.

                                                                         :
  m_data0(data0 & 0x7fff7fff), // Mask off bits 15 and 31 for better compression and consistency
  m_data1(data1 & 0x7fff7fff),  // with emulator constructor - these bits are not jet count data!
  m_bx(bx)
{
}
L1GctJetCounts::L1GctJetCounts ( std::vector< unsigned >  counts)

constructor for emulator

L1GctJetCounts::L1GctJetCounts ( std::vector< unsigned >  counts,
int16_t  bx 
)
L1GctJetCounts::~L1GctJetCounts ( ) [virtual]

destructor

Definition at line 78 of file L1GctJetCounts.cc.

{

}

Member Function Documentation

int16_t L1GctJetCounts::bx ( ) const [inline]

get bunch-crossing index

Definition at line 78 of file L1GctJetCounts.h.

References m_bx.

{ return m_bx; }
unsigned L1GctJetCounts::count ( unsigned  i) const

get count by index

Definition at line 84 of file L1GctJetCounts.cc.

References m_data0, m_data1, and MAX_TOTAL_COUNTS.

Referenced by count00(), count01(), count02(), count03(), count04(), count05(), count06(), count07(), count08(), count09(), count10(), count11(), L1GtJetCountsCondition::evaluateCondition(), L1GlobalTriggerPSB::fillPsbBlock(), and operator<<().

{
  if (i<6){ return ((m_data0 >> (i<3 ? (5*i) : ((5*i)+1))) & 0x1f); }
  else if (i < MAX_TOTAL_COUNTS) { return ((m_data1 >> (i<9 ? ((5*i)-30) : ((5*i)-29))) & 0x1f); }    
  else { return 0; }
}
unsigned L1GctJetCounts::count00 ( ) const [inline]

get individual counts (for use with FWLite)

Definition at line 64 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<1 ?  0 : count(0)); }
unsigned L1GctJetCounts::count01 ( ) const [inline]

Definition at line 65 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<2 ?  0 : count(1)); }
unsigned L1GctJetCounts::count02 ( ) const [inline]

Definition at line 66 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<3 ?  0 : count(2)); }
unsigned L1GctJetCounts::count03 ( ) const [inline]

Definition at line 67 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<4 ?  0 : count(3)); }
unsigned L1GctJetCounts::count04 ( ) const [inline]

Definition at line 68 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<5 ?  0 : count(4)); }
unsigned L1GctJetCounts::count05 ( ) const [inline]

Definition at line 69 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<6 ?  0 : count(5)); }
unsigned L1GctJetCounts::count06 ( ) const [inline]

Definition at line 70 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<7 ?  0 : count(6)); }
unsigned L1GctJetCounts::count07 ( ) const [inline]

Definition at line 71 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<8 ?  0 : count(7)); }
unsigned L1GctJetCounts::count08 ( ) const [inline]

Definition at line 72 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<9 ?  0 : count(8)); }
unsigned L1GctJetCounts::count09 ( ) const [inline]

Definition at line 73 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<10 ? 0 : count(9)); }
unsigned L1GctJetCounts::count10 ( ) const [inline]

Definition at line 74 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<11 ? 0 : count(10)); }
unsigned L1GctJetCounts::count11 ( ) const [inline]

Definition at line 75 of file L1GctJetCounts.h.

References count(), and MAX_TRUE_COUNTS.

{ return (MAX_TRUE_COUNTS<12 ? 0 : count(11)); }
bool L1GctJetCounts::empty ( ) const [inline]

empty method

Definition at line 52 of file L1GctJetCounts.h.

{ return false; }
std::string L1GctJetCounts::name ( ) const [inline]

name method

Definition at line 49 of file L1GctJetCounts.h.

{ return "JetCounts"; }
int L1GctJetCounts::operator!= ( const L1GctJetCounts c) const [inline]

inequality operator

Definition at line 84 of file L1GctJetCounts.h.

References trackerHits::c.

{ return !(*this == c); }
int L1GctJetCounts::operator== ( const L1GctJetCounts c) const [inline]

equality operator

Definition at line 81 of file L1GctJetCounts.h.

References m_data0, m_data1, raw0(), and raw1().

{ return (m_data0==c.raw0() && m_data1==c.raw1()); }
uint32_t L1GctJetCounts::raw0 ( ) const [inline]

get raw word 0

Definition at line 55 of file L1GctJetCounts.h.

References m_data0.

Referenced by operator==().

{ return m_data0; }
uint32_t L1GctJetCounts::raw1 ( ) const [inline]

get raw word 1

Definition at line 58 of file L1GctJetCounts.h.

References m_data1.

Referenced by operator==().

{ return m_data1; }

Member Data Documentation

int16_t L1GctJetCounts::m_bx [private]

Definition at line 90 of file L1GctJetCounts.h.

Referenced by bx().

uint32_t L1GctJetCounts::m_data0 [private]

Definition at line 88 of file L1GctJetCounts.h.

Referenced by count(), operator==(), and raw0().

uint32_t L1GctJetCounts::m_data1 [private]

Definition at line 89 of file L1GctJetCounts.h.

Referenced by count(), operator==(), and raw1().

const unsigned L1GctJetCounts::MAX_TOTAL_COUNTS = 12 [static]

static maximum number of jet counts This can be up to 12 but we use some of the available bandwidth for other information.

Definition at line 24 of file L1GctJetCounts.h.

Referenced by count().

const unsigned L1GctJetCounts::MAX_TRUE_COUNTS = 6 [static]

MAX_TRUE_COUNTS specifies the bandwidth remaining for real jet count information.

Definition at line 25 of file L1GctJetCounts.h.

Referenced by count00(), count01(), count02(), count03(), count04(), count05(), count06(), count07(), count08(), count09(), count10(), and count11().