ATLAS Offline Software
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
LVL1MUONIF::Lvl1MuSectorLogicData Class Referenceabstract

Base class for the data coming from one SL board. More...

#include <Lvl1MuSectorLogicData.h>

Inheritance diagram for LVL1MUONIF::Lvl1MuSectorLogicData:
Collaboration diagram for LVL1MUONIF::Lvl1MuSectorLogicData:

Public Types

typedef unsigned int SectorLogicWord
 

Public Member Functions

 Lvl1MuSectorLogicData ()
 
 Lvl1MuSectorLogicData (const Lvl1MuSectorLogicData &right)
 
virtual ~Lvl1MuSectorLogicData ()
 
Lvl1MuSectorLogicDataoperator= (const Lvl1MuSectorLogicData &right)
 
bool is2candidatesInSector () const
 
int bcid () const
 
int roi (size_t id) const
 
int ovl (size_t id) const
 
int pt (size_t id) const
 
int charge (size_t id) const
 
bool is2candidates (size_t id) const
 
void set2candidatesInSector ()
 
void clear2candidatesInSector ()
 
void bcid (int value)
 
void roi (size_t id, int value)
 
void ovl (size_t id, int value)
 
void pt (size_t id, int value)
 
void charge (size_t id, int value)
 
void set2candidates (size_t id)
 
void clear2candidates (size_t id)
 
void clear ()
 
virtual SectorLogicWord getWordFormat () const =0
 Get data in 32 bit word format: More...
 
virtual const Lvl1MuSectorLogicDataconvertFromWordFormat (const SectorLogicWord &)=0
 Convert SectorLogicData from 32 bit word data. More...
 
int getSystemId () const
 

Protected Member Functions

virtual void printOut (std::ostream &out) const
 print out data More...
 

Protected Attributes

bool m_2candidatesInSector
 
int m_roi [2]
 
int m_ovl [2]
 
int m_pt [2]
 
bool m_2candidates [2]
 
int m_bcid
 
int m_charge [2]
 
int m_id_system
 

Friends

std::ostream & operator<< (std::ostream &, const Lvl1MuSectorLogicData &)
 

Detailed Description

Base class for the data coming from one SL board.

   Each muon SL board sends 32 bits of information to the MuCTPI.
   While the format of these 32 bits is a bit different for the
   different sector types, the information stored in them is the
   same. So the derived classes only have to implement the functions
   decoding the 32-bit words into the variables in this class.
Revision
187728
Date
2009-05-27 18:18:06 +0200 (Wed, 27 May 2009)

Definition at line 34 of file Lvl1MuSectorLogicData.h.

Member Typedef Documentation

◆ SectorLogicWord

Definition at line 44 of file Lvl1MuSectorLogicData.h.

Constructor & Destructor Documentation

◆ Lvl1MuSectorLogicData() [1/2]

LVL1MUONIF::Lvl1MuSectorLogicData::Lvl1MuSectorLogicData ( )

Definition at line 13 of file Lvl1MuSectorLogicData.cxx.

14  : m_2candidatesInSector ( false ), m_bcid( 0 ),
15  m_id_system( -1 ) {
16 
17  for ( size_t i = 0; i < 2; ++i ) {
18  m_roi[ i ] = -1;
19  m_ovl[ i ] = -1;
20  m_pt[ i ] = -1;
21  m_charge[ i ] = + 1;
22  m_2candidates[ i ] = false;
23  }
24  }

◆ Lvl1MuSectorLogicData() [2/2]

LVL1MUONIF::Lvl1MuSectorLogicData::Lvl1MuSectorLogicData ( const Lvl1MuSectorLogicData right)

Definition at line 27 of file Lvl1MuSectorLogicData.cxx.

27  {
28  *this = right;
29  }

◆ ~Lvl1MuSectorLogicData()

virtual LVL1MUONIF::Lvl1MuSectorLogicData::~Lvl1MuSectorLogicData ( )
inlinevirtual

Definition at line 39 of file Lvl1MuSectorLogicData.h.

39 {}

Member Function Documentation

◆ bcid() [1/2]

int LVL1MUONIF::Lvl1MuSectorLogicData::bcid ( ) const
inline

Definition at line 47 of file Lvl1MuSectorLogicData.h.

47 { return m_bcid; }

◆ bcid() [2/2]

void LVL1MUONIF::Lvl1MuSectorLogicData::bcid ( int  value)
inline

Definition at line 56 of file Lvl1MuSectorLogicData.h.

56 { m_bcid = value; }

◆ charge() [1/2]

int LVL1MUONIF::Lvl1MuSectorLogicData::charge ( size_t  id) const
inline

Definition at line 51 of file Lvl1MuSectorLogicData.h.

51 { return m_charge[ id ]; }

◆ charge() [2/2]

void LVL1MUONIF::Lvl1MuSectorLogicData::charge ( size_t  id,
int  value 
)
inline

Definition at line 60 of file Lvl1MuSectorLogicData.h.

60 { m_charge[ id ] = value; }

◆ clear()

void LVL1MUONIF::Lvl1MuSectorLogicData::clear ( )

Definition at line 80 of file Lvl1MuSectorLogicData.cxx.

80  {
81  m_2candidatesInSector = false;
82  m_bcid = 0;
83  for ( size_t i = 0; i < 2; ++i ) {
84  m_roi[ i ] = -1;
85  m_ovl[ i ] = -1;
86  m_pt[ i ] = -1;
87  m_charge[ i ] = -1;
88  m_2candidates[ i ] = false;
89  }
90  }

◆ clear2candidates()

void LVL1MUONIF::Lvl1MuSectorLogicData::clear2candidates ( size_t  id)
inline

Definition at line 62 of file Lvl1MuSectorLogicData.h.

62 { m_2candidates[ id ] = false; }

◆ clear2candidatesInSector()

void LVL1MUONIF::Lvl1MuSectorLogicData::clear2candidatesInSector ( )
inline

Definition at line 55 of file Lvl1MuSectorLogicData.h.

55 { m_2candidatesInSector = false;}

◆ convertFromWordFormat()

virtual const Lvl1MuSectorLogicData& LVL1MUONIF::Lvl1MuSectorLogicData::convertFromWordFormat ( const SectorLogicWord )
pure virtual

◆ getSystemId()

int LVL1MUONIF::Lvl1MuSectorLogicData::getSystemId ( ) const
inline

Definition at line 73 of file Lvl1MuSectorLogicData.h.

73 { return m_id_system; }

◆ getWordFormat()

virtual SectorLogicWord LVL1MUONIF::Lvl1MuSectorLogicData::getWordFormat ( ) const
pure virtual

◆ is2candidates()

bool LVL1MUONIF::Lvl1MuSectorLogicData::is2candidates ( size_t  id) const
inline

Definition at line 52 of file Lvl1MuSectorLogicData.h.

52 { return m_2candidates[ id ]; }

◆ is2candidatesInSector()

bool LVL1MUONIF::Lvl1MuSectorLogicData::is2candidatesInSector ( ) const
inline

Definition at line 46 of file Lvl1MuSectorLogicData.h.

46 { return m_2candidatesInSector; }

◆ operator=()

Lvl1MuSectorLogicData & LVL1MUONIF::Lvl1MuSectorLogicData::operator= ( const Lvl1MuSectorLogicData right)

Definition at line 31 of file Lvl1MuSectorLogicData.cxx.

31  {
32  if ( this != &right ) {
33  m_id_system = right.m_id_system;
34  m_bcid = right.m_bcid;
35  m_2candidatesInSector = right.m_2candidatesInSector;
36  for ( size_t i = 0; i < 2; ++i ) {
37  m_roi[ i ] = right.m_roi[ i ];
38  m_ovl[ i ] = right.m_ovl[ i ];
39  m_pt[ i ] = right.m_pt[ i ];
40  m_charge[ i ] = right.m_charge[ i ];
41  m_2candidates[ i ] = right.m_2candidates[ i ];
42  }
43  }
44  return *this;
45  }

◆ ovl() [1/2]

int LVL1MUONIF::Lvl1MuSectorLogicData::ovl ( size_t  id) const
inline

Definition at line 49 of file Lvl1MuSectorLogicData.h.

49 { return m_ovl[ id ]; }

◆ ovl() [2/2]

void LVL1MUONIF::Lvl1MuSectorLogicData::ovl ( size_t  id,
int  value 
)
inline

Definition at line 58 of file Lvl1MuSectorLogicData.h.

58 { m_ovl[ id ] = value; }

◆ printOut()

void LVL1MUONIF::Lvl1MuSectorLogicData::printOut ( std::ostream &  out) const
protectedvirtual

print out data

Reimplemented in LVL1MUONIF::Lvl1MuBarrelSectorLogicData, LVL1MUONIF::Lvl1MuEndcapSectorLogicData, and LVL1MUONIF::Lvl1MuForwardSectorLogicData.

Definition at line 54 of file Lvl1MuSectorLogicData.cxx.

54  {
55 
56  out << "Bit 0 " << " >2candidates in a sector ";
57  out << std::setw( 8 ) << m_2candidatesInSector << std::endl;
58 
59  out << "Bit 1-9 " << " ROI<1> + OVL<1> ";
60  out << std::setw( 8 ) << m_roi[ 0 ] << " : " << m_ovl[ 0 ] << std::endl;
61  out << "Bit 10-18 " << " ROI<2> + OVL<2> ";
62  out << std::setw( 8 ) << m_roi[ 1 ] << " : " << m_ovl[ 1 ] << std::endl;
63  out << "Bit 19-21 " << " Pt1 ";
64  out << std::setw( 8 ) << m_pt[ 0 ] << std::endl;
65  out << "Bit 22-24 " << " Pt2 ";
66  out << std::setw( 8 ) << m_pt[ 1 ] << std::endl;
67  out << "Bit 25 " << " >2candidates in ROI1 ";
68  out << std::setw( 8 ) << m_2candidates[ 0 ] << std::endl;
69  out << "Bit 26 " << " >2candidates in ROI2 ";
70  out << std::setw( 8 ) << m_2candidates[ 1 ] << std::endl;
71  out << "Bit 27-29 " << " BCID ";
72  out << std::setw( 8 ) << m_bcid << std::endl;
73  out << "Bit 30 " << " charge in ROI1 ";
74  out << std::setw( 8 ) << m_charge[ 0 ] << std::endl;
75  out << "Bit 31 " << " charge in ROI2 ";
76  out << std::setw( 8 ) << m_charge[ 1 ] << std::endl;
77 
78  }

◆ pt() [1/2]

int LVL1MUONIF::Lvl1MuSectorLogicData::pt ( size_t  id) const
inline

Definition at line 50 of file Lvl1MuSectorLogicData.h.

50 { return m_pt[ id ]; }

◆ pt() [2/2]

void LVL1MUONIF::Lvl1MuSectorLogicData::pt ( size_t  id,
int  value 
)
inline

Definition at line 59 of file Lvl1MuSectorLogicData.h.

59 { m_pt[ id ] = value; }

◆ roi() [1/2]

int LVL1MUONIF::Lvl1MuSectorLogicData::roi ( size_t  id) const
inline

Definition at line 48 of file Lvl1MuSectorLogicData.h.

48 { return m_roi[ id ]; }

◆ roi() [2/2]

void LVL1MUONIF::Lvl1MuSectorLogicData::roi ( size_t  id,
int  value 
)
inline

Definition at line 57 of file Lvl1MuSectorLogicData.h.

57 { m_roi[ id ] = value; }

◆ set2candidates()

void LVL1MUONIF::Lvl1MuSectorLogicData::set2candidates ( size_t  id)
inline

Definition at line 61 of file Lvl1MuSectorLogicData.h.

61 { m_2candidates[ id ] = true; }

◆ set2candidatesInSector()

void LVL1MUONIF::Lvl1MuSectorLogicData::set2candidatesInSector ( )
inline

Definition at line 54 of file Lvl1MuSectorLogicData.h.

54 { m_2candidatesInSector = true; }

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  out,
const Lvl1MuSectorLogicData right 
)
friend

Definition at line 47 of file Lvl1MuSectorLogicData.cxx.

47  {
48 
49  right.printOut( out );
50  return out;
51 
52  }

Member Data Documentation

◆ m_2candidates

bool LVL1MUONIF::Lvl1MuSectorLogicData::m_2candidates[2]
protected

Definition at line 83 of file Lvl1MuSectorLogicData.h.

◆ m_2candidatesInSector

bool LVL1MUONIF::Lvl1MuSectorLogicData::m_2candidatesInSector
protected

Definition at line 79 of file Lvl1MuSectorLogicData.h.

◆ m_bcid

int LVL1MUONIF::Lvl1MuSectorLogicData::m_bcid
protected

Definition at line 84 of file Lvl1MuSectorLogicData.h.

◆ m_charge

int LVL1MUONIF::Lvl1MuSectorLogicData::m_charge[2]
protected

Definition at line 85 of file Lvl1MuSectorLogicData.h.

◆ m_id_system

int LVL1MUONIF::Lvl1MuSectorLogicData::m_id_system
protected

Definition at line 86 of file Lvl1MuSectorLogicData.h.

◆ m_ovl

int LVL1MUONIF::Lvl1MuSectorLogicData::m_ovl[2]
protected

Definition at line 81 of file Lvl1MuSectorLogicData.h.

◆ m_pt

int LVL1MUONIF::Lvl1MuSectorLogicData::m_pt[2]
protected

Definition at line 82 of file Lvl1MuSectorLogicData.h.

◆ m_roi

int LVL1MUONIF::Lvl1MuSectorLogicData::m_roi[2]
protected

Definition at line 80 of file Lvl1MuSectorLogicData.h.


The documentation for this class was generated from the following files:
LVL1MUONIF::Lvl1MuSectorLogicData::m_2candidatesInSector
bool m_2candidatesInSector
Definition: Lvl1MuSectorLogicData.h:79
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:71
LVL1MUONIF::Lvl1MuSectorLogicData::m_2candidates
bool m_2candidates[2]
Definition: Lvl1MuSectorLogicData.h:83
athena.value
value
Definition: athena.py:122
LVL1MUONIF::Lvl1MuSectorLogicData::m_charge
int m_charge[2]
Definition: Lvl1MuSectorLogicData.h:85
LVL1MUONIF::Lvl1MuSectorLogicData::m_ovl
int m_ovl[2]
Definition: Lvl1MuSectorLogicData.h:81
LVL1MUONIF::Lvl1MuSectorLogicData::m_pt
int m_pt[2]
Definition: Lvl1MuSectorLogicData.h:82
lumiFormat.i
int i
Definition: lumiFormat.py:92
LVL1MUONIF::Lvl1MuSectorLogicData::m_id_system
int m_id_system
Definition: Lvl1MuSectorLogicData.h:86
LVL1MUONIF::Lvl1MuSectorLogicData::m_roi
int m_roi[2]
Definition: Lvl1MuSectorLogicData.h:80
id
SG::auxid_t id
Definition: Control/AthContainers/Root/debug.cxx:194
LVL1MUONIF::Lvl1MuSectorLogicData::m_bcid
int m_bcid
Definition: Lvl1MuSectorLogicData.h:84