ATLAS Offline Software
Loading...
Searching...
No Matches
LVL1MUONIF::Lvl1MuSectorLogicDataPhase1 Class Referenceabstract

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

#include <Lvl1MuSectorLogicDataPhase1.h>

Inheritance diagram for LVL1MUONIF::Lvl1MuSectorLogicDataPhase1:
Collaboration diagram for LVL1MUONIF::Lvl1MuSectorLogicDataPhase1:

Public Types

typedef std::pair< unsigned long int, unsigned short int > SectorLogicWord

Public Member Functions

 Lvl1MuSectorLogicDataPhase1 ()
 Lvl1MuSectorLogicDataPhase1 (const Lvl1MuSectorLogicDataPhase1 &right)
virtual ~Lvl1MuSectorLogicDataPhase1 ()
Lvl1MuSectorLogicDataPhase1operator= (const Lvl1MuSectorLogicDataPhase1 &right)
bool is2candidatesInSector () const
int bcid () const
int nsw () 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
int goodmf (size_t id) const
int innercoin (size_t id) const
int bw2or3 (size_t id) const
int veto (size_t id) const
void set2candidatesInSector ()
void clear2candidatesInSector ()
void bcid (int value)
void nsw (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 goodmf (size_t id, int value)
void innercoin (size_t id, int value)
void bw2or3 (size_t id, int value)
void veto (size_t id, int value)
void clear ()
virtual SectorLogicWord getWordFormat () const =0
 Get data in 32 bit word format:
virtual const Lvl1MuSectorLogicDataPhase1convertFromWordFormat (const SectorLogicWord &)=0
 Convert SectorLogicDataPhase1 from 32 bit word data.
int getSystemId () const

Protected Member Functions

virtual void printOut (std::ostream &out) const =0
 print out data
void initialize ()

Protected Attributes

bool m_2candidatesInSector
std::vector< int > m_roi
std::vector< int > m_ovl
std::vector< int > m_pt
std::vector< bool > m_2candidates
int m_bcid
int m_nsw
std::vector< int > m_charge
int m_id_system
std::vector< int > m_goodmf
std::vector< int > m_innercoin
std::vector< int > m_bw2or3
std::vector< int > m_veto

Friends

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

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 35 of file Lvl1MuSectorLogicDataPhase1.h.

Member Typedef Documentation

◆ SectorLogicWord

typedef std::pair<unsigned long int, unsigned short int> LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::SectorLogicWord

Definition at line 45 of file Lvl1MuSectorLogicDataPhase1.h.

Constructor & Destructor Documentation

◆ Lvl1MuSectorLogicDataPhase1() [1/2]

◆ Lvl1MuSectorLogicDataPhase1() [2/2]

LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::Lvl1MuSectorLogicDataPhase1 ( const Lvl1MuSectorLogicDataPhase1 & right)

Definition at line 54 of file Lvl1MuSectorLogicDataPhase1.cxx.

54 {
55 *this = right;
56 }

◆ ~Lvl1MuSectorLogicDataPhase1()

LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::~Lvl1MuSectorLogicDataPhase1 ( )
virtual

Member Function Documentation

◆ bcid() [1/2]

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

Definition at line 48 of file Lvl1MuSectorLogicDataPhase1.h.

48{ return m_bcid; }

◆ bcid() [2/2]

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

Definition at line 62 of file Lvl1MuSectorLogicDataPhase1.h.

62{ m_bcid = value; }

◆ bw2or3() [1/2]

int LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::bw2or3 ( size_t id) const
inline

◆ bw2or3() [2/2]

void LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::bw2or3 ( size_t id,
int value )
inline

Definition at line 72 of file Lvl1MuSectorLogicDataPhase1.h.

72{m_bw2or3[ id ] = value; }

◆ charge() [1/2]

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

Definition at line 53 of file Lvl1MuSectorLogicDataPhase1.h.

53{ return m_charge[ id ]; }

◆ charge() [2/2]

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

Definition at line 67 of file Lvl1MuSectorLogicDataPhase1.h.

67{ m_charge[ id ] = value; }

◆ clear()

void LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::clear ( )

Definition at line 86 of file Lvl1MuSectorLogicDataPhase1.cxx.

86 {
88 m_bcid = 0;
89 m_nsw = 0;
90 for ( size_t i = 0; i < NCAND[m_id_system]; ++i ) {
91 m_roi[ i ] = -1;
92 m_ovl[ i ] = -1;
93 m_pt[ i ] = -1;
94 m_charge[ i ] = -1;
95 m_2candidates[ i ] = false;
96 m_goodmf[ i ] = -1;
97 m_innercoin[ i ] = -1;
98 m_bw2or3[ i ] = -1;
99 m_veto[ i ] = 0;
100 }
101 }
static const size_t NCAND[3]

◆ clear2candidates()

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

Definition at line 69 of file Lvl1MuSectorLogicDataPhase1.h.

69{ m_2candidates[ id ] = false; }

◆ clear2candidatesInSector()

void LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::clear2candidatesInSector ( )
inline

Definition at line 61 of file Lvl1MuSectorLogicDataPhase1.h.

61{ m_2candidatesInSector = false;}

◆ convertFromWordFormat()

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

◆ getSystemId()

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

Definition at line 84 of file Lvl1MuSectorLogicDataPhase1.h.

84{ return m_id_system; }

◆ getWordFormat()

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

◆ goodmf() [1/2]

int LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::goodmf ( size_t id) const
inline

Definition at line 55 of file Lvl1MuSectorLogicDataPhase1.h.

55{ return m_goodmf[ id ]; }

◆ goodmf() [2/2]

void LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::goodmf ( size_t id,
int value )
inline

Definition at line 70 of file Lvl1MuSectorLogicDataPhase1.h.

70{m_goodmf[ id ] = value; }

◆ initialize()

void LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::initialize ( )
protected

Definition at line 35 of file Lvl1MuSectorLogicDataPhase1.cxx.

36 {
37 if (m_id_system == -1) return;
38
39 size_t ncand = NCAND[m_id_system];
40 for ( size_t i = 0; i < ncand; ++i ) {
41 m_roi.push_back(-1);
42 m_ovl.push_back(-1);
43 m_pt.push_back(-1);
44 m_charge.push_back(+1);
45 m_2candidates.push_back(false);
46 m_goodmf.push_back(-1);
47 m_innercoin.push_back(-1);
48 m_bw2or3.push_back(-1);
49 m_veto.push_back(0);
50 }
51 }

◆ innercoin() [1/2]

int LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::innercoin ( size_t id) const
inline

Definition at line 56 of file Lvl1MuSectorLogicDataPhase1.h.

56{ return m_innercoin[ id ]; }

◆ innercoin() [2/2]

void LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::innercoin ( size_t id,
int value )
inline

Definition at line 71 of file Lvl1MuSectorLogicDataPhase1.h.

71{m_innercoin[ id ] = value; }

◆ is2candidates()

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

Definition at line 54 of file Lvl1MuSectorLogicDataPhase1.h.

54{ return m_2candidates[ id ]; } // per ROI (not used for mult counting)

◆ is2candidatesInSector()

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

Definition at line 47 of file Lvl1MuSectorLogicDataPhase1.h.

47{ return m_2candidatesInSector; } // MORE than two candidates per sector

◆ nsw() [1/2]

int LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::nsw ( ) const
inline

Definition at line 49 of file Lvl1MuSectorLogicDataPhase1.h.

49{return m_nsw; } // NSW monitoring bit

◆ nsw() [2/2]

void LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::nsw ( int value)
inline

Definition at line 63 of file Lvl1MuSectorLogicDataPhase1.h.

63{m_nsw = value; }

◆ operator=()

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

Definition at line 58 of file Lvl1MuSectorLogicDataPhase1.cxx.

58 {
59 if ( this != &right ) {
60 m_id_system = right.m_id_system;
61 m_bcid = right.m_bcid;
62 m_nsw = right.m_nsw;
63 m_2candidatesInSector = right.m_2candidatesInSector;
64 for ( size_t i = 0; i < NCAND[m_id_system]; ++i ) {
65 m_roi[ i ] = right.m_roi[ i ];
66 m_ovl[ i ] = right.m_ovl[ i ];
67 m_pt[ i ] = right.m_pt[ i ];
68 m_charge[ i ] = right.m_charge[ i ];
69 m_2candidates[ i ] = right.m_2candidates[ i ];
70 m_goodmf[ i ] = right.m_goodmf[ i ];
71 m_innercoin[ i ] = right.m_innercoin[ i ];
72 m_bw2or3[ i ] = right.m_bw2or3[ i ];
73 m_veto[ i ] = right.m_veto[ i ];
74 }
75 }
76 return *this;
77 }

◆ ovl() [1/2]

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

Definition at line 51 of file Lvl1MuSectorLogicDataPhase1.h.

51{ return m_ovl[ id ]; }

◆ ovl() [2/2]

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

Definition at line 65 of file Lvl1MuSectorLogicDataPhase1.h.

65{ m_ovl[ id ] = value; }

◆ printOut()

virtual void LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::printOut ( std::ostream & out) const
protectedpure virtual

◆ pt() [1/2]

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

Definition at line 52 of file Lvl1MuSectorLogicDataPhase1.h.

52{ return m_pt[ id ]; }

◆ pt() [2/2]

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

Definition at line 66 of file Lvl1MuSectorLogicDataPhase1.h.

66{ m_pt[ id ] = value; }

◆ roi() [1/2]

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

Definition at line 50 of file Lvl1MuSectorLogicDataPhase1.h.

50{ return m_roi[ id ]; }

◆ roi() [2/2]

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

Definition at line 64 of file Lvl1MuSectorLogicDataPhase1.h.

64{ m_roi[ id ] = value; }

◆ set2candidates()

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

Definition at line 68 of file Lvl1MuSectorLogicDataPhase1.h.

68{ m_2candidates[ id ] = true; }

◆ set2candidatesInSector()

void LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::set2candidatesInSector ( )
inline

Definition at line 60 of file Lvl1MuSectorLogicDataPhase1.h.

60{ m_2candidatesInSector = true; }

◆ veto() [1/2]

int LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::veto ( size_t id) const
inline

Definition at line 58 of file Lvl1MuSectorLogicDataPhase1.h.

58{return m_veto[ id ]; } // veto candidate for multiplicity counting due to overlap removal

◆ veto() [2/2]

void LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::veto ( size_t id,
int value )
inline

Definition at line 73 of file Lvl1MuSectorLogicDataPhase1.h.

73{m_veto[ id ] = value; }

◆ operator<<

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

Definition at line 79 of file Lvl1MuSectorLogicDataPhase1.cxx.

79 {
80
81 right.printOut( out );
82 return out;
83
84 }

Member Data Documentation

◆ m_2candidates

std::vector<bool> LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_2candidates
protected

Definition at line 95 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_2candidatesInSector

bool LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_2candidatesInSector
protected

Definition at line 91 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_bcid

int LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_bcid
protected

Definition at line 96 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_bw2or3

std::vector<int> LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_bw2or3
protected

Definition at line 102 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_charge

std::vector<int> LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_charge
protected

Definition at line 98 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_goodmf

std::vector<int> LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_goodmf
protected

Definition at line 100 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_id_system

int LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_id_system
protected

Definition at line 99 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_innercoin

std::vector<int> LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_innercoin
protected

Definition at line 101 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_nsw

int LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_nsw
protected

Definition at line 97 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_ovl

std::vector<int> LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_ovl
protected

Definition at line 93 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_pt

std::vector<int> LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_pt
protected

Definition at line 94 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_roi

std::vector<int> LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_roi
protected

Definition at line 92 of file Lvl1MuSectorLogicDataPhase1.h.

◆ m_veto

std::vector<int> LVL1MUONIF::Lvl1MuSectorLogicDataPhase1::m_veto
protected

Definition at line 103 of file Lvl1MuSectorLogicDataPhase1.h.


The documentation for this class was generated from the following files: