CMS 3D CMS Logo

Public Member Functions | Private Attributes

L1GctJetCand Class Reference

Level-1 Trigger jet candidate. More...

#include <L1GctJetCand.h>

Inheritance diagram for L1GctJetCand:
L1GctCand

List of all members.

Public Member Functions

int16_t bx () const
 get bunch-crossing index
unsigned capBlock () const
 which capture block did this come from
unsigned capIndex () const
 what index within capture block
bool empty () const
 was an object really found?
unsigned etaIndex () const
 get eta index (bit 3 is sign, 1 for -ve Z, 0 for +ve Z)
unsigned etaSign () const
 get eta sign bit (1 for -ve Z, 0 for +ve Z)
bool isCentral () const
 check if this is a central jet
bool isForward () const
 check if this is a forward jet
bool isTau () const
 check if this is a tau
 L1GctJetCand ()
 default constructor (for vector initialisation etc.)
 L1GctJetCand (unsigned rank, unsigned phi, unsigned eta, bool isTau, bool isFor)
 L1GctJetCand (unsigned rank, unsigned phi, unsigned eta, bool isTau, bool isFor, uint16_t block, uint16_t index, int16_t bx)
 L1GctJetCand (uint16_t rawData, bool isTau, bool isFor)
 construct from raw data - used in GT
 L1GctJetCand (uint16_t rawData, bool isTau, bool isFor, uint16_t block, uint16_t index, int16_t bx)
 construct from raw data with source - uesd in GCT unpacker
std::string name () const
 name of object
int operator!= (const L1GctJetCand &c) const
 inequality operator
int operator== (const L1GctJetCand &c) const
 equality operator
unsigned phiIndex () const
 get phi index (0-17)
unsigned rank () const
 get rank bits
uint16_t raw () const
 get the raw data
L1CaloRegionDetId regionId () const
 region associated with the candidate
virtual ~L1GctJetCand ()
 destructor (virtual to prevent compiler warnings)

Private Attributes

int16_t m_bx
uint16_t m_captureBlock
uint8_t m_captureIndex
uint16_t m_data
bool m_isFor
bool m_isTau

Detailed Description

Level-1 Trigger jet candidate.

Author:
Jim Brooke
Date:
June 2006

Definition at line 18 of file L1GctJetCand.h.


Constructor & Destructor Documentation

L1GctJetCand::L1GctJetCand ( )

default constructor (for vector initialisation etc.)

Definition at line 11 of file L1GctJetCand.cc.

                           :
  m_data(0),
  m_isTau(false),
  m_isFor(false),
  m_captureBlock(0),
  m_captureIndex(0),
  m_bx(0)
{

}
L1GctJetCand::L1GctJetCand ( uint16_t  rawData,
bool  isTau,
bool  isFor 
)

construct from raw data - used in GT

Definition at line 23 of file L1GctJetCand.cc.

                                                                   :
  m_data(rawData & 0x7fff), // 0x7fff is to mask off bit 15, which is not data that needs to be stored
  m_isTau(isTau),
  m_isFor(isFor),
  m_captureBlock(0),
  m_captureIndex(0),
  m_bx(0)
{
}
L1GctJetCand::L1GctJetCand ( uint16_t  rawData,
bool  isTau,
bool  isFor,
uint16_t  block,
uint16_t  index,
int16_t  bx 
)

construct from raw data with source - uesd in GCT unpacker

Definition at line 34 of file L1GctJetCand.cc.

                                                                                                               : 
  m_data(rawData & 0x7fff), // 0x7fff is to mask off bit 15, which is not data that needs to be stored
  m_isTau(isTau),
  m_isFor(isFor),
  m_captureBlock(block&0xfff),
  m_captureIndex(index&0xff),
  m_bx(bx)
{
}
L1GctJetCand::L1GctJetCand ( unsigned  rank,
unsigned  phi,
unsigned  eta,
bool  isTau,
bool  isFor 
)

construct from rank, eta, phi, isolation - used in GCT emulator NB - eta = -6 to -0, +0 to +6. Sign is bit 3, 1 means -ve Z, 0 means +ve Z

Definition at line 46 of file L1GctJetCand.cc.

References m_data.

                                                                                            : 
  m_data(0), // overridden below
  m_isTau(isTau),
  m_isFor(isFor),
  m_captureBlock(0),
  m_captureIndex(0),
  m_bx(0)
{ 
  m_data = (rank & 0x3f) + ((eta & 0xf)<<6) + ((phi & 0x1f)<<10); 
}
L1GctJetCand::L1GctJetCand ( unsigned  rank,
unsigned  phi,
unsigned  eta,
bool  isTau,
bool  isFor,
uint16_t  block,
uint16_t  index,
int16_t  bx 
)

construct from rank, eta, phi, isolation - will be used in GCT emulator? NB - eta = -6 to -0, +0 to +6. Sign is bit 3, 1 means -ve Z, 0 means +ve Z

Definition at line 59 of file L1GctJetCand.cc.

References m_data.

                                                                                                                                        : 
  m_data(0), // overridden below
  m_isTau(isTau),
  m_isFor(isFor),
  m_captureBlock(block&0xfff),
  m_captureIndex(index&0xff),
  m_bx(bx)
{ 
  m_data = (rank & 0x3f) + ((eta & 0xf)<<6) + ((phi & 0x1f)<<10); 
}
L1GctJetCand::~L1GctJetCand ( ) [virtual]

destructor (virtual to prevent compiler warnings)

Definition at line 70 of file L1GctJetCand.cc.

{ } 

Member Function Documentation

int16_t L1GctJetCand::bx ( ) const [inline]

get bunch-crossing index

Definition at line 80 of file L1GctJetCand.h.

References m_bx.

Referenced by operator<<(), L1GctJetFinalStage::setInputCentralJet(), L1GctJetFinalStage::setInputForwardJet(), and L1GctJetFinalStage::setInputTauJet().

{ return m_bx; }
unsigned L1GctJetCand::capBlock ( ) const [inline]

which capture block did this come from

Definition at line 74 of file L1GctJetCand.h.

References m_captureBlock.

Referenced by operator<<().

{ return m_captureBlock; }
unsigned L1GctJetCand::capIndex ( ) const [inline]

what index within capture block

Definition at line 77 of file L1GctJetCand.h.

References m_captureIndex.

Referenced by operator<<().

{ return m_captureIndex; }
bool L1GctJetCand::empty ( ) const [virtual]

was an object really found?

Implements L1GctCand.

Definition at line 80 of file L1GctJetCand.cc.

References rank().

Referenced by operator<<(), operator==(), L1GctJetFinalStage::setInputCentralJet(), L1GctJetFinalStage::setInputForwardJet(), and L1GctJetFinalStage::setInputTauJet().

                               {
  return (rank() == 0);
}
unsigned L1GctJetCand::etaIndex ( ) const [virtual]

get eta index (bit 3 is sign, 1 for -ve Z, 0 for +ve Z)

Implements L1GctCand.

Definition at line 120 of file L1GctJetCand.cc.

References m_data.

Referenced by operator<<(), and regionId().

{ return (m_data>>6) & 0xf; }
unsigned L1GctJetCand::etaSign ( ) const [inline, virtual]

get eta sign bit (1 for -ve Z, 0 for +ve Z)

Implements L1GctCand.

Definition at line 59 of file L1GctJetCand.h.

References m_data.

Referenced by operator<<(), and regionId().

{ return (m_data>>9) & 0x1; }
bool L1GctJetCand::isCentral ( ) const [inline]

check if this is a central jet

Definition at line 65 of file L1GctJetCand.h.

References m_isFor, and m_isTau.

Referenced by L1GctJetFinalStage::setInputCentralJet().

{ return (!m_isTau) && (!m_isFor); }
bool L1GctJetCand::isForward ( ) const [inline]

check if this is a forward jet

Definition at line 71 of file L1GctJetCand.h.

References m_isFor.

Referenced by l1extra::L1JetParticle::L1JetParticle(), operator<<(), operator==(), regionId(), and L1GctJetFinalStage::setInputForwardJet().

{ return m_isFor; }
bool L1GctJetCand::isTau ( ) const [inline]

check if this is a tau

Definition at line 68 of file L1GctJetCand.h.

References m_isTau.

Referenced by l1extra::L1JetParticle::L1JetParticle(), operator<<(), operator==(), and L1GctJetFinalStage::setInputTauJet().

{ return m_isTau; }
string L1GctJetCand::name ( ) const

name of object

Definition at line 73 of file L1GctJetCand.cc.

References m_isFor, and m_isTau.

                                { 
  if (m_isTau) { return "tau jet"; }
  else if (m_isFor) { return "forward jet"; }
  else { return "central jet"; }
}
int L1GctJetCand::operator!= ( const L1GctJetCand c) const [inline]

inequality operator

Definition at line 88 of file L1GctJetCand.h.

References trackerHits::c.

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

equality operator

Definition at line 83 of file L1GctJetCand.h.

References empty(), isForward(), isTau(), m_data, m_isFor, m_isTau, and raw().

                                              { return ((m_data==c.raw() && 
                                                m_isTau==c.isTau() && m_isFor==c.isForward())
                                                 || (this->empty() && c.empty())); }
unsigned L1GctJetCand::phiIndex ( ) const [virtual]

get phi index (0-17)

Implements L1GctCand.

Definition at line 123 of file L1GctJetCand.cc.

References m_data.

Referenced by operator<<(), and regionId().

{ return (m_data>>10) & 0x1f; }
unsigned L1GctJetCand::rank ( ) const [virtual]

get rank bits

Implements L1GctCand.

Definition at line 117 of file L1GctJetCand.cc.

References m_data.

Referenced by empty(), and operator<<().

{ return m_data & 0x3f; }
uint16_t L1GctJetCand::raw ( ) const [inline]

get the raw data

Definition at line 50 of file L1GctJetCand.h.

References m_data.

Referenced by L1GtPatternGenerator::analyze(), and operator==().

{ return m_data; }
L1CaloRegionDetId L1GctJetCand::regionId ( ) const [virtual]

region associated with the candidate

Implements L1GctCand.

Definition at line 101 of file L1GctJetCand.cc.

References eta(), etaIndex(), etaSign(), isForward(), and phiIndex().

                                               {

  // get global eta
  unsigned eta;
  if ( !isForward() ) {
    eta = ( etaSign()==1 ? 10-(etaIndex()&0x7)  : (etaIndex()&0x7)+11 );
  }
  else {
    eta = ( etaSign()==1 ? 3-(etaIndex()&0x7) : (etaIndex()&0x7)+18 );
  }

  return L1CaloRegionDetId(eta, phiIndex());

}

Member Data Documentation

int16_t L1GctJetCand::m_bx [private]

Definition at line 97 of file L1GctJetCand.h.

Referenced by bx().

uint16_t L1GctJetCand::m_captureBlock [private]

Definition at line 95 of file L1GctJetCand.h.

Referenced by capBlock().

uint8_t L1GctJetCand::m_captureIndex [private]

Definition at line 96 of file L1GctJetCand.h.

Referenced by capIndex().

uint16_t L1GctJetCand::m_data [private]

Definition at line 92 of file L1GctJetCand.h.

Referenced by etaIndex(), etaSign(), L1GctJetCand(), operator==(), phiIndex(), rank(), and raw().

bool L1GctJetCand::m_isFor [private]

Definition at line 94 of file L1GctJetCand.h.

Referenced by isCentral(), isForward(), name(), and operator==().

bool L1GctJetCand::m_isTau [private]

Definition at line 93 of file L1GctJetCand.h.

Referenced by isCentral(), isTau(), name(), and operator==().