CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes | Friends
L1MuBMTrackSegPhi Class Reference

#include <L1MuBMTrackSegPhi.h>

Public Types

enum  TSQuality {
  Li, Lo, Hi, Ho,
  LL, HL, HH, Null
}
 quality code of BBMX phi track segments More...
 

Public Member Functions

int bx () const
 return bunch crossing More...
 
bool empty () const
 is it an empty phi track segment? More...
 
bool etaFlag () const
 return eta flag More...
 
 L1MuBMTrackSegPhi ()
 default constructor More...
 
 L1MuBMTrackSegPhi (int wheel_id, int sector_id, int station_id, int phi=0, int phib=0, TSQuality quality=Null, bool tag=false, int bx=17, bool etaFlag=false)
 constructor More...
 
 L1MuBMTrackSegPhi (const L1MuBMTrackSegLoc &, int phi=0, int phib=0, TSQuality quality=Null, bool tag=false, int bx=17, bool etaFlag=false)
 constructor More...
 
 L1MuBMTrackSegPhi (const L1MuBMTrackSegPhi &)=default
 copy constructor More...
 
 L1MuBMTrackSegPhi (L1MuBMTrackSegPhi &&)=default
 move constructor More...
 
bool operator!= (const L1MuBMTrackSegPhi &) const
 unequal operator More...
 
L1MuBMTrackSegPhioperator= (const L1MuBMTrackSegPhi &)=default
 assignment operator More...
 
L1MuBMTrackSegPhioperator= (L1MuBMTrackSegPhi &&)=default
 move assignment operator More...
 
bool operator== (const L1MuBMTrackSegPhi &) const
 equal operator More...
 
int phi () const
 return phi More...
 
int phib () const
 return phib More...
 
double phibValue () const
 return phib-value in global coordinates [0,2pi] More...
 
double phiValue () const
 return phi-value in global coordinates [0,2pi] More...
 
int quality () const
 return quality code More...
 
void reset ()
 reset phi track segment More...
 
int sector () const
 return sector More...
 
void setEtaFlag (bool flag)
 set eta flag More...
 
int station () const
 return station More...
 
int tag () const
 return tag (second TS tag) More...
 
int wheel () const
 return wheel More...
 
const L1MuBMTrackSegLocwhere () const
 return location of phi track segment More...
 
virtual ~L1MuBMTrackSegPhi ()
 destructor More...
 

Private Attributes

int m_bx
 
bool m_etaFlag
 
L1MuBMTrackSegLoc m_location
 
int m_phi
 
int m_phib
 
TSQuality m_quality
 
bool m_tag
 

Friends

std::ostream & operator<< (std::ostream &, const TSQuality &)
 overload output stream operator for phi track segment quality More...
 
std::ostream & operator<< (std::ostream &, const L1MuBMTrackSegPhi &)
 overload output stream operator for phi track segments More...
 

Detailed Description

PHI Track Segment

N. Neumeister CERN EP

Definition at line 41 of file L1MuBMTrackSegPhi.h.

Member Enumeration Documentation

◆ TSQuality

Constructor & Destructor Documentation

◆ L1MuBMTrackSegPhi() [1/5]

L1MuBMTrackSegPhi::L1MuBMTrackSegPhi ( )

◆ L1MuBMTrackSegPhi() [2/5]

L1MuBMTrackSegPhi::L1MuBMTrackSegPhi ( int  wheel_id,
int  sector_id,
int  station_id,
int  phi = 0,
int  phib = 0,
TSQuality  quality = Null,
bool  tag = false,
int  bx = 17,
bool  etaFlag = false 
)

constructor

Definition at line 47 of file L1MuBMTrackSegPhi.cc.

49  : m_location(wheel_id, sector_id, station_id),
50  m_phi(phi),
51  m_phib(phib),
53  m_tag(tag),
54  m_bx(bx),
56  /*
57  if ( phi < -2048 || phi > 2047 ) {
58  cerr << "TrackSegPhi : phi out of range: " << phi << endl;
59  }
60  if ( phib < -512 || phib > 511 ) {
61  cerr << "TrackSegPhi : phib out of range: " << phib << endl;
62  }
63  if ( quality > 7 ) {
64  cerr << "TrackSegPhi : quality out of range: " << quality << endl;
65  }*/
66 }
L1MuBMTrackSegLoc m_location
int bx() const
return bunch crossing
int quality() const
return quality code
int phib() const
return phib
bool etaFlag() const
return eta flag
int phi() const
return phi
int tag() const
return tag (second TS tag)

◆ L1MuBMTrackSegPhi() [3/5]

L1MuBMTrackSegPhi::L1MuBMTrackSegPhi ( const L1MuBMTrackSegLoc id,
int  phi = 0,
int  phib = 0,
TSQuality  quality = Null,
bool  tag = false,
int  bx = 17,
bool  etaFlag = false 
)

constructor

Definition at line 68 of file L1MuBMTrackSegPhi.cc.

71  /*
72  if ( phi < -2048 || phi > 2047 ) {
73  cerr << "TrackSegPhi : phi out of range: " << phi << endl;
74  }
75  if ( phib < -512 || phib > 511 ) {
76  cerr << "TrackSegPhi : phib out of range: " << phib << endl;
77  }
78  if ( quality > 7 ) {
79  cerr << "TrackSegPhi : quality out of range: " << quality << endl;
80  }
81 */
82 }
L1MuBMTrackSegLoc m_location
int bx() const
return bunch crossing
int quality() const
return quality code
int phib() const
return phib
bool etaFlag() const
return eta flag
int phi() const
return phi
int tag() const
return tag (second TS tag)

◆ L1MuBMTrackSegPhi() [4/5]

L1MuBMTrackSegPhi::L1MuBMTrackSegPhi ( const L1MuBMTrackSegPhi )
default

copy constructor

◆ L1MuBMTrackSegPhi() [5/5]

L1MuBMTrackSegPhi::L1MuBMTrackSegPhi ( L1MuBMTrackSegPhi &&  )
default

move constructor

◆ ~L1MuBMTrackSegPhi()

L1MuBMTrackSegPhi::~L1MuBMTrackSegPhi ( )
virtual

destructor

Definition at line 87 of file L1MuBMTrackSegPhi.cc.

87 {}

Member Function Documentation

◆ bx()

int L1MuBMTrackSegPhi::bx ( ) const
inline

return bunch crossing

Definition at line 112 of file L1MuBMTrackSegPhi.h.

References m_bx.

112 { return m_bx; }

◆ empty()

bool L1MuBMTrackSegPhi::empty ( ) const
inline

is it an empty phi track segment?

Definition at line 118 of file L1MuBMTrackSegPhi.h.

References m_quality, and Null.

Referenced by L1MuBMSEU::run(), and L1MuBMExtrapolationUnit::run().

◆ etaFlag()

bool L1MuBMTrackSegPhi::etaFlag ( ) const
inline

return eta flag

Definition at line 115 of file L1MuBMTrackSegPhi.h.

References m_etaFlag.

115 { return m_etaFlag; }

◆ operator!=()

bool L1MuBMTrackSegPhi::operator!= ( const L1MuBMTrackSegPhi id) const

unequal operator

Definition at line 139 of file L1MuBMTrackSegPhi.cc.

References m_bx, m_location, m_phi, m_phib, and m_quality.

139  {
140  if (m_location != id.m_location)
141  return true;
142  if (m_phi != id.m_phi)
143  return true;
144  if (m_phib != id.m_phib)
145  return true;
146  if (m_quality != id.m_quality)
147  return true;
148  if (m_bx != id.m_bx)
149  return true;
150  return false;
151 }
L1MuBMTrackSegLoc m_location

◆ operator=() [1/2]

L1MuBMTrackSegPhi& L1MuBMTrackSegPhi::operator= ( const L1MuBMTrackSegPhi )
default

assignment operator

◆ operator=() [2/2]

L1MuBMTrackSegPhi& L1MuBMTrackSegPhi::operator= ( L1MuBMTrackSegPhi &&  )
default

move assignment operator

◆ operator==()

bool L1MuBMTrackSegPhi::operator== ( const L1MuBMTrackSegPhi id) const

equal operator

Definition at line 122 of file L1MuBMTrackSegPhi.cc.

References m_bx, m_location, m_phi, m_phib, and m_quality.

122  {
123  if (m_location != id.m_location)
124  return false;
125  if (m_phi != id.m_phi)
126  return false;
127  if (m_phib != id.m_phib)
128  return false;
129  if (m_quality != id.m_quality)
130  return false;
131  if (m_bx != id.m_bx)
132  return false;
133  return true;
134 }
L1MuBMTrackSegLoc m_location

◆ phi()

int L1MuBMTrackSegPhi::phi ( ) const
inline

◆ phib()

int L1MuBMTrackSegPhi::phib ( ) const
inline

◆ phibValue()

double L1MuBMTrackSegPhi::phibValue ( ) const

return phib-value in global coordinates [0,2pi]

Definition at line 117 of file L1MuBMTrackSegPhi.cc.

References m_phib.

117 { return static_cast<double>(m_phib) / 512; }

◆ phiValue()

double L1MuBMTrackSegPhi::phiValue ( ) const

return phi-value in global coordinates [0,2pi]

Definition at line 108 of file L1MuBMTrackSegPhi.cc.

References m_location, m_phi, M_PI, L1MuBMTrackSegLoc::sector(), and createJobs::tmp.

108  {
109  double tmp = static_cast<double>(m_location.sector()) * M_PI / 6;
110  tmp += static_cast<double>(m_phi) / 4096;
111  return (tmp > 0) ? tmp : (2 * M_PI + tmp);
112 }
L1MuBMTrackSegLoc m_location
int sector() const
return sector (30 deg)
#define M_PI
tmp
align.sh
Definition: createJobs.py:716

◆ quality()

int L1MuBMTrackSegPhi::quality ( ) const
inline

return quality code

Definition at line 106 of file L1MuBMTrackSegPhi.h.

References m_quality.

Referenced by L1MuBMAssignmentUnit::getPt1Method(), L1MuBMAssignmentUnit::getPt2Method(), and L1MuBMEUX::run().

106 { return m_quality; }

◆ reset()

void L1MuBMTrackSegPhi::reset ( void  )

reset phi track segment

Definition at line 96 of file L1MuBMTrackSegPhi.cc.

References m_bx, m_etaFlag, m_phi, m_phib, m_quality, m_tag, and Null.

Referenced by L1MuBMSEU::reset().

◆ sector()

int L1MuBMTrackSegPhi::sector ( ) const
inline

return sector

Definition at line 91 of file L1MuBMTrackSegPhi.h.

References m_location, and L1MuBMTrackSegLoc::sector().

Referenced by geometryXMLparser.DTAlignable::index(), L1MuBMAssignmentUnit::PhiAU(), L1MuBMAssignmentUnit::phiDiff(), and L1MuBMEUX::run().

91 { return m_location.sector(); }
L1MuBMTrackSegLoc m_location
int sector() const
return sector (30 deg)

◆ setEtaFlag()

void L1MuBMTrackSegPhi::setEtaFlag ( bool  flag)
inline

set eta flag

Definition at line 121 of file L1MuBMTrackSegPhi.h.

References RemoveAddSevLevel::flag, and m_etaFlag.

◆ station()

int L1MuBMTrackSegPhi::station ( ) const
inline

return station

Definition at line 94 of file L1MuBMTrackSegPhi.h.

References m_location, and L1MuBMTrackSegLoc::station().

Referenced by geometryXMLparser.DTAlignable::index(), and geometryXMLparser.CSCAlignable::index().

94 { return m_location.station(); }
L1MuBMTrackSegLoc m_location
int station() const
return station

◆ tag()

int L1MuBMTrackSegPhi::tag ( ) const
inline

return tag (second TS tag)

Definition at line 109 of file L1MuBMTrackSegPhi.h.

References m_tag.

109 { return m_tag; }

◆ wheel()

int L1MuBMTrackSegPhi::wheel ( ) const
inline

return wheel

Definition at line 88 of file L1MuBMTrackSegPhi.h.

References m_location, and L1MuBMTrackSegLoc::wheel().

Referenced by geometryXMLparser.DTAlignable::index(), and L1MuBMEUX::run().

88 { return m_location.wheel(); }
L1MuBMTrackSegLoc m_location
int wheel() const
return wheel

◆ where()

const L1MuBMTrackSegLoc& L1MuBMTrackSegPhi::where ( ) const
inline

return location of phi track segment

Definition at line 97 of file L1MuBMTrackSegPhi.h.

References m_location.

97 { return m_location; }
L1MuBMTrackSegLoc m_location

Friends And Related Function Documentation

◆ operator<< [1/2]

std::ostream& operator<< ( std::ostream &  ,
const TSQuality  
)
friend

overload output stream operator for phi track segment quality

◆ operator<< [2/2]

std::ostream& operator<< ( std::ostream &  ,
const L1MuBMTrackSegPhi  
)
friend

overload output stream operator for phi track segments

Member Data Documentation

◆ m_bx

int L1MuBMTrackSegPhi::m_bx
private

Definition at line 147 of file L1MuBMTrackSegPhi.h.

Referenced by bx(), operator!=(), operator==(), and reset().

◆ m_etaFlag

bool L1MuBMTrackSegPhi::m_etaFlag
private

Definition at line 148 of file L1MuBMTrackSegPhi.h.

Referenced by etaFlag(), reset(), and setEtaFlag().

◆ m_location

L1MuBMTrackSegLoc L1MuBMTrackSegPhi::m_location
private

Definition at line 142 of file L1MuBMTrackSegPhi.h.

Referenced by operator!=(), operator==(), phiValue(), sector(), station(), wheel(), and where().

◆ m_phi

int L1MuBMTrackSegPhi::m_phi
private

Definition at line 143 of file L1MuBMTrackSegPhi.h.

Referenced by operator!=(), operator==(), phi(), phiValue(), and reset().

◆ m_phib

int L1MuBMTrackSegPhi::m_phib
private

Definition at line 144 of file L1MuBMTrackSegPhi.h.

Referenced by operator!=(), operator==(), phib(), phibValue(), and reset().

◆ m_quality

TSQuality L1MuBMTrackSegPhi::m_quality
private

Definition at line 145 of file L1MuBMTrackSegPhi.h.

Referenced by empty(), operator!=(), operator==(), quality(), and reset().

◆ m_tag

bool L1MuBMTrackSegPhi::m_tag
private

Definition at line 146 of file L1MuBMTrackSegPhi.h.

Referenced by reset(), and tag().