ATLAS Offline Software
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | Static Private Attributes | List of all members
TCS::MuonNextBCTOB Class Reference

#include <MuonNextBCTOB.h>

Inheritance diagram for TCS::MuonNextBCTOB:
Collaboration diagram for TCS::MuonNextBCTOB:

Public Member Functions

 MuonNextBCTOB (uint32_t roiWord=0, const std::string &tobName="MuonNextBCTOB")
 
 MuonNextBCTOB (unsigned int et, unsigned int isolation, int eta, int phi, uint32_t roiWord=0, const std::string &tobName="MuonNextBCTOB")
 
 MuonNextBCTOB (const MuonNextBCTOB &muonNextBC)
 
virtual ~MuonNextBCTOB ()
 
unsigned int Et () const
 
unsigned int isolation () const
 
int eta () const
 
int phi () const
 
double EtDouble () const
 
double EtaDouble () const
 
double PhiDouble () const
 
void setEt (unsigned int et)
 
void setIsolation (unsigned int et)
 
void setEta (int eta)
 
void setPhi (int phi)
 
void setEtDouble (double et)
 
void setEtaDouble (double eta)
 
void setPhiDouble (double phi)
 
inputTOBType_t tobType () const
 
virtual void print (std::ostream &o) const
 
uint32_t roiWord () const
 
const std::string & tobName () const
 

Static Public Member Functions

static unsigned int nBitsEt ()
 
static unsigned int nBitsIsolation ()
 
static unsigned int nBitsEta ()
 
static unsigned int nBitsPhi ()
 
static MuonNextBCTOBcreateOnHeap (const MuonNextBCTOB &cl)
 
static void clearHeap ()
 
static const Heap< TCS::MuonNextBCTOB > & heap ()
 
static size_t instances ()
 

Protected Member Functions

int sizeCheck (int value, unsigned int size) const
 
unsigned int sizeCheck (unsigned int value, unsigned int size) const
 
int sizeCheckM (int value, unsigned int size) const
 

Private Attributes

unsigned int m_Et {0}
 
unsigned int m_isolation {0}
 
int m_eta {0}
 
int m_phi {0}
 
double m_EtDouble {0}
 
double m_etaDouble {0}
 
double m_phiDouble {0}
 
uint32_t m_roiWord
 
std::string m_tobName
 

Static Private Attributes

static const unsigned int g_nBitsEt = 8
 
static const unsigned int g_nBitsIsolation = 5
 
static const unsigned int g_nBitsEta = 6
 
static const unsigned int g_nBitsPhi = 6
 
static thread_local Heap< TCS::MuonNextBCTOBfg_heap
 

Detailed Description

Definition at line 13 of file MuonNextBCTOB.h.

Constructor & Destructor Documentation

◆ MuonNextBCTOB() [1/3]

TCS::MuonNextBCTOB::MuonNextBCTOB ( uint32_t  roiWord = 0,
const std::string &  tobName = "MuonNextBCTOB" 
)

Definition at line 13 of file MuonNextBCTOB.cxx.

13  :
15 {}

◆ MuonNextBCTOB() [2/3]

TCS::MuonNextBCTOB::MuonNextBCTOB ( unsigned int  et,
unsigned int  isolation,
int  eta,
int  phi,
uint32_t  roiWord = 0,
const std::string &  tobName = "MuonNextBCTOB" 
)

Definition at line 18 of file MuonNextBCTOB.cxx.

18  :
20  , m_Et( sizeCheck(et, nBitsEt()) )
22  , m_eta( sizeCheck(eta, nBitsEta()) )
23  , m_phi( sizeCheck(phi, nBitsPhi()) )
24 {}

◆ MuonNextBCTOB() [3/3]

TCS::MuonNextBCTOB::MuonNextBCTOB ( const MuonNextBCTOB muonNextBC)
default

◆ ~MuonNextBCTOB()

TCS::MuonNextBCTOB::~MuonNextBCTOB ( )
virtualdefault

Member Function Documentation

◆ clearHeap()

void TCS::MuonNextBCTOB::clearHeap ( )
static

Definition at line 38 of file MuonNextBCTOB.cxx.

38  {
39  return fg_heap.clear();
40 }

◆ createOnHeap()

TCS::MuonNextBCTOB * TCS::MuonNextBCTOB::createOnHeap ( const MuonNextBCTOB cl)
static

Definition at line 33 of file MuonNextBCTOB.cxx.

33  {
34  return fg_heap.create(cl);
35 }

◆ Et()

unsigned int TCS::MuonNextBCTOB::Et ( ) const
inline

Definition at line 35 of file MuonNextBCTOB.h.

35 { return m_Et; }

◆ eta()

int TCS::MuonNextBCTOB::eta ( ) const
inline

Definition at line 37 of file MuonNextBCTOB.h.

37 { return m_eta; }

◆ EtaDouble()

double TCS::MuonNextBCTOB::EtaDouble ( ) const
inline

Definition at line 41 of file MuonNextBCTOB.h.

41 { return m_etaDouble; }

◆ EtDouble()

double TCS::MuonNextBCTOB::EtDouble ( ) const
inline

Definition at line 40 of file MuonNextBCTOB.h.

40 { return m_EtDouble; }

◆ heap()

static const Heap<TCS::MuonNextBCTOB>& TCS::MuonNextBCTOB::heap ( )
inlinestatic

Definition at line 59 of file MuonNextBCTOB.h.

59 { return fg_heap; }

◆ instances()

static size_t TCS::BaseTOB::instances ( )
inlinestaticinherited

Definition at line 25 of file BaseTOB.h.

25 { return 0; }

◆ isolation()

unsigned int TCS::MuonNextBCTOB::isolation ( ) const
inline

Definition at line 36 of file MuonNextBCTOB.h.

36 { return m_isolation; }

◆ nBitsEt()

static unsigned int TCS::MuonNextBCTOB::nBitsEt ( )
inlinestatic

Definition at line 16 of file MuonNextBCTOB.h.

16 { return g_nBitsEt; }

◆ nBitsEta()

static unsigned int TCS::MuonNextBCTOB::nBitsEta ( )
inlinestatic

Definition at line 18 of file MuonNextBCTOB.h.

18 { return g_nBitsEta; }

◆ nBitsIsolation()

static unsigned int TCS::MuonNextBCTOB::nBitsIsolation ( )
inlinestatic

Definition at line 17 of file MuonNextBCTOB.h.

17 { return g_nBitsIsolation; }

◆ nBitsPhi()

static unsigned int TCS::MuonNextBCTOB::nBitsPhi ( )
inlinestatic

Definition at line 19 of file MuonNextBCTOB.h.

19 { return g_nBitsPhi; }

◆ phi()

int TCS::MuonNextBCTOB::phi ( ) const
inline

Definition at line 38 of file MuonNextBCTOB.h.

38 { return m_phi; }

◆ PhiDouble()

double TCS::MuonNextBCTOB::PhiDouble ( ) const
inline

Definition at line 42 of file MuonNextBCTOB.h.

42 { return m_phiDouble; }

◆ print()

void TCS::MuonNextBCTOB::print ( std::ostream &  o) const
virtual

Implements TCS::BaseTOB.

Definition at line 42 of file MuonNextBCTOB.cxx.

42  {
43  o << "cluster energy: " << Et() << ", eta: " << eta() << ", phi: " << phi();
44 }

◆ roiWord()

uint32_t TCS::BaseTOB::roiWord ( ) const
inlineinherited

Definition at line 21 of file BaseTOB.h.

21 { return m_roiWord; }

◆ setEt()

void TCS::MuonNextBCTOB::setEt ( unsigned int  et)
inline

Definition at line 45 of file MuonNextBCTOB.h.

45 { m_Et = sizeCheck(et, nBitsEt()); }

◆ setEta()

void TCS::MuonNextBCTOB::setEta ( int  eta)
inline

Definition at line 47 of file MuonNextBCTOB.h.

47 { m_eta = sizeCheck(eta, nBitsEta()); }

◆ setEtaDouble()

void TCS::MuonNextBCTOB::setEtaDouble ( double  eta)
inline

Definition at line 51 of file MuonNextBCTOB.h.

51 { m_etaDouble = eta; }

◆ setEtDouble()

void TCS::MuonNextBCTOB::setEtDouble ( double  et)
inline

Definition at line 50 of file MuonNextBCTOB.h.

50 { m_EtDouble = et; }

◆ setIsolation()

void TCS::MuonNextBCTOB::setIsolation ( unsigned int  et)
inline

Definition at line 46 of file MuonNextBCTOB.h.

◆ setPhi()

void TCS::MuonNextBCTOB::setPhi ( int  phi)
inline

Definition at line 48 of file MuonNextBCTOB.h.

48 { m_phi = sizeCheck(phi, nBitsPhi()); }

◆ setPhiDouble()

void TCS::MuonNextBCTOB::setPhiDouble ( double  phi)
inline

Definition at line 52 of file MuonNextBCTOB.h.

52 { m_phiDouble = phi; }

◆ sizeCheck() [1/2]

int TCS::BaseTOB::sizeCheck ( int  value,
unsigned int  size 
) const
protectedinherited

Definition at line 32 of file BaseTOB.cxx.

33 {
34  int max(0x1 << (size-1));
35  int min(~max + 1);
36  --max;
37  if(value>max || value<min) {
38  TCS_EXCEPTION("Integer value " << value << " outside firmware specifications. Maximum number of bits is " << size << " -> range ["<<min<<" - "<<max<<"]" << ", for " << m_tobName);
39  }
40  return value;
41 }

◆ sizeCheck() [2/2]

unsigned int TCS::BaseTOB::sizeCheck ( unsigned int  value,
unsigned int  size 
) const
protectedinherited

Definition at line 44 of file BaseTOB.cxx.

45 {
46  unsigned int max( (0x1 << size)-1 );
47  if(value>max) {
48  TCS_EXCEPTION("Unsigned integer value " << value << " outside firmware specifications. Maximum number of bits is " << size << " -> range [0"<<" - "<<max<<"]" << ", for " << m_tobName);
49  }
50  return value;
51 }

◆ sizeCheckM()

int TCS::BaseTOB::sizeCheckM ( int  value,
unsigned int  size 
) const
protectedinherited

Definition at line 19 of file BaseTOB.cxx.

20 {
21  int max(0x1 << (size-1));
22  int min(~max + 1);
23  --max;
24  if( (-value)>max || (-value)<min) {
25  TCS_EXCEPTION("Integer value " << -value << " outside firmware specifications. Maximum number of bits is " << size << " -> range ["<<min<<" - "<<max<<"]" << ", for " << m_tobName);
26  }
27  return value;
28 }

◆ tobName()

const std::string& TCS::BaseTOB::tobName ( ) const
inlineinherited

Definition at line 23 of file BaseTOB.h.

23 { return m_tobName; }

◆ tobType()

inputTOBType_t TCS::MuonNextBCTOB::tobType ( ) const
inlinevirtual

Implements TCS::BaseTOB.

Definition at line 54 of file MuonNextBCTOB.h.

54 { return MUONNEXTBC; }

Member Data Documentation

◆ fg_heap

thread_local TCS::Heap< TCS::MuonNextBCTOB > TCS::MuonNextBCTOB::fg_heap
staticprivate

Definition at line 78 of file MuonNextBCTOB.h.

◆ g_nBitsEt

const unsigned int TCS::MuonNextBCTOB::g_nBitsEt = 8
staticprivate

Definition at line 64 of file MuonNextBCTOB.h.

◆ g_nBitsEta

const unsigned int TCS::MuonNextBCTOB::g_nBitsEta = 6
staticprivate

Definition at line 66 of file MuonNextBCTOB.h.

◆ g_nBitsIsolation

const unsigned int TCS::MuonNextBCTOB::g_nBitsIsolation = 5
staticprivate

Definition at line 65 of file MuonNextBCTOB.h.

◆ g_nBitsPhi

const unsigned int TCS::MuonNextBCTOB::g_nBitsPhi = 6
staticprivate

Definition at line 67 of file MuonNextBCTOB.h.

◆ m_Et

unsigned int TCS::MuonNextBCTOB::m_Et {0}
private

Definition at line 69 of file MuonNextBCTOB.h.

◆ m_eta

int TCS::MuonNextBCTOB::m_eta {0}
private

Definition at line 71 of file MuonNextBCTOB.h.

◆ m_etaDouble

double TCS::MuonNextBCTOB::m_etaDouble {0}
private

Definition at line 75 of file MuonNextBCTOB.h.

◆ m_EtDouble

double TCS::MuonNextBCTOB::m_EtDouble {0}
private

Definition at line 74 of file MuonNextBCTOB.h.

◆ m_isolation

unsigned int TCS::MuonNextBCTOB::m_isolation {0}
private

Definition at line 70 of file MuonNextBCTOB.h.

◆ m_phi

int TCS::MuonNextBCTOB::m_phi {0}
private

Definition at line 72 of file MuonNextBCTOB.h.

◆ m_phiDouble

double TCS::MuonNextBCTOB::m_phiDouble {0}
private

Definition at line 76 of file MuonNextBCTOB.h.

◆ m_roiWord

uint32_t TCS::BaseTOB::m_roiWord
privateinherited

Definition at line 36 of file BaseTOB.h.

◆ m_tobName

std::string TCS::BaseTOB::m_tobName
privateinherited

Definition at line 37 of file BaseTOB.h.


The documentation for this class was generated from the following files:
TCS::MuonNextBCTOB::nBitsPhi
static unsigned int nBitsPhi()
Definition: MuonNextBCTOB.h:19
TCS::BaseTOB::tobName
const std::string & tobName() const
Definition: BaseTOB.h:23
plotBeamSpotCompare.x1
x1
Definition: plotBeamSpotCompare.py:216
et
Extra patterns decribing particle interation process.
TCS::Heap::clear
void clear()
Definition: Heap.h:32
max
#define max(a, b)
Definition: cfImp.cxx:41
xAOD::et
et
Definition: TrigEMCluster_v1.cxx:25
TCS::MUONNEXTBC
@ MUONNEXTBC
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/Types.h:20
TCS::MuonNextBCTOB::nBitsEt
static unsigned int nBitsEt()
Definition: MuonNextBCTOB.h:16
athena.value
value
Definition: athena.py:124
TCS::BaseTOB::roiWord
uint32_t roiWord() const
Definition: BaseTOB.h:21
TCS::MuonNextBCTOB::Et
unsigned int Et() const
Definition: MuonNextBCTOB.h:35
TCS::BaseTOB::sizeCheck
int sizeCheck(int value, unsigned int size) const
Definition: BaseTOB.cxx:32
TCS::MuonNextBCTOB::m_phi
int m_phi
Definition: MuonNextBCTOB.h:72
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
TCS::MuonNextBCTOB::m_Et
unsigned int m_Et
Definition: MuonNextBCTOB.h:69
TCS::MuonNextBCTOB::m_isolation
unsigned int m_isolation
Definition: MuonNextBCTOB.h:70
TCS::BaseTOB::BaseTOB
BaseTOB(uint32_t roiWord, const std::string &tobType)
Definition: BaseTOB.cxx:11
TCS::BaseTOB::m_roiWord
uint32_t m_roiWord
Definition: BaseTOB.h:36
TCS::MuonNextBCTOB::m_phiDouble
double m_phiDouble
Definition: MuonNextBCTOB.h:76
TCS::MuonNextBCTOB::m_EtDouble
double m_EtDouble
Definition: MuonNextBCTOB.h:74
TCS::MuonNextBCTOB::nBitsIsolation
static unsigned int nBitsIsolation()
Definition: MuonNextBCTOB.h:17
TCS::MuonNextBCTOB::fg_heap
static thread_local Heap< TCS::MuonNextBCTOB > fg_heap
Definition: MuonNextBCTOB.h:78
TCS_EXCEPTION
#define TCS_EXCEPTION(MSG)
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/Exception.h:14
TCS::MuonNextBCTOB::m_etaDouble
double m_etaDouble
Definition: MuonNextBCTOB.h:75
min
#define min(a, b)
Definition: cfImp.cxx:40
TCS::Heap::create
T * create(const T &obj)
create an object on the heap
Definition: Heap.h:50
TCS::MuonNextBCTOB::phi
int phi() const
Definition: MuonNextBCTOB.h:38
TCS::MuonNextBCTOB::nBitsEta
static unsigned int nBitsEta()
Definition: MuonNextBCTOB.h:18
TCS::MuonNextBCTOB::g_nBitsPhi
static const unsigned int g_nBitsPhi
Definition: MuonNextBCTOB.h:67
TCS::MuonNextBCTOB::g_nBitsEt
static const unsigned int g_nBitsEt
Definition: MuonNextBCTOB.h:64
TCS::MuonNextBCTOB::isolation
unsigned int isolation() const
Definition: MuonNextBCTOB.h:36
TCS::MuonNextBCTOB::g_nBitsIsolation
static const unsigned int g_nBitsIsolation
Definition: MuonNextBCTOB.h:65
TCS::MuonNextBCTOB::g_nBitsEta
static const unsigned int g_nBitsEta
Definition: MuonNextBCTOB.h:66
TCS::MuonNextBCTOB::eta
int eta() const
Definition: MuonNextBCTOB.h:37
dq_make_web_display.cl
cl
print [x.__class__ for x in toList(dqregion.getSubRegions()) ]
Definition: dq_make_web_display.py:26
TCS::BaseTOB::m_tobName
std::string m_tobName
Definition: BaseTOB.h:37
TCS::MuonNextBCTOB::m_eta
int m_eta
Definition: MuonNextBCTOB.h:71