ATLAS Offline Software
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
MdtAsBuiltPar Class Reference

Container classifier the MDT as-built parameters See parameter description in http://atlas-muon-align.web.cern.ch/atlas-muon-align/endplug/asbuilt.pdf. More...

#include <MdtAsBuiltPar.h>

Inheritance diagram for MdtAsBuiltPar:
Collaboration diagram for MdtAsBuiltPar:

Classes

struct  AlignmentParameters
 

Public Types

enum  multilayer_t { multilayer_t::ML1 = 0, multilayer_t::ML2, multilayer_t::NMLTYPES }
 MDT multi-layer index. More...
 
enum  tubeSide_t { tubeSide_t::POS = 0, tubeSide_t::NEG, tubeSide_t::NTUBESIDETYPES }
 MDT tube side. More...
 

Public Member Functions

 MdtAsBuiltPar ()=default
 
virtual ~MdtAsBuiltPar () override=default
 
void setAlignmentParameters (multilayer_t iML, tubeSide_t iTubeSide, float y0, float z0, float alpha, float ypitch, float zpitch, int stagg)
 Set the alignment parameters for a ML and a tube side. More...
 
double y0 (multilayer_t iML, tubeSide_t iTubeSide) const
 
double z0 (multilayer_t iML, tubeSide_t iTubeSide) const
 
double alpha (multilayer_t iML, tubeSide_t iTubeSide) const
 
double ypitch (multilayer_t iML, tubeSide_t iTubeSide) const
 
double zpitch (multilayer_t iML, tubeSide_t iTubeSide) const
 
int stagg (multilayer_t iML, tubeSide_t iTubeSide) const
 
void setIdentifier (const Identifier &id)
 Setters and getters for the Athena Identifier. More...
 
const Identifieridentify () const
 
bool operator< (const MuonAlignmentPar &other) const
 Odering operater using the Identifier. More...
 
void setAmdbId (const std::string &stName, int stEta, int stPhi, int stJob)
 AMDB identifiers. They're often not the same as the ATLAS ones (TGCs) More...
 
int AmdbJob () const
 Seems to correspond to the multilayer but sometimes also stEta. More...
 
int AmdbEta () const
 station Eta More...
 
int AmdbPhi () const
 station phi More...
 
const std::string & AmdbStation () const
 station Name More...
 

Private Member Functions

AlignmentParametersmeas (multilayer_t iML, tubeSide_t iTubeSide)
 
const AlignmentParametersmeas (multilayer_t iML, tubeSide_t iTubeSide) const
 

Private Attributes

std::array< AlignmentParameters, NMEASm_meas {}
 
Identifier m_id {0}
 
std::string m_station {}
 
int m_eta {0}
 
int m_phi {0}
 
int m_job {0}
 

Static Private Attributes

static constexpr unsigned int NMEAS
 

Detailed Description

Container classifier the MDT as-built parameters See parameter description in http://atlas-muon-align.web.cern.ch/atlas-muon-align/endplug/asbuilt.pdf.

Definition at line 18 of file MdtAsBuiltPar.h.

Member Enumeration Documentation

◆ multilayer_t

MDT multi-layer index.

Enumerator
ML1 
ML2 
NMLTYPES 

Definition at line 28 of file MdtAsBuiltPar.h.

28 { ML1 = 0, ML2, NMLTYPES };

◆ tubeSide_t

MDT tube side.

Enumerator
POS 
NEG 
NTUBESIDETYPES 

Definition at line 33 of file MdtAsBuiltPar.h.

33  {
34  POS = 0, // s>0 side
35  NEG, // s<0 side
36  NTUBESIDETYPES
37  };

Constructor & Destructor Documentation

◆ MdtAsBuiltPar()

MdtAsBuiltPar::MdtAsBuiltPar ( )
default

◆ ~MdtAsBuiltPar()

virtual MdtAsBuiltPar::~MdtAsBuiltPar ( )
overridevirtualdefault

Member Function Documentation

◆ alpha()

double MdtAsBuiltPar::alpha ( multilayer_t  iML,
tubeSide_t  iTubeSide 
) const
inline

Definition at line 49 of file MdtAsBuiltPar.h.

49 { return meas(iML, iTubeSide).alpha; }

◆ AmdbEta()

int MuonAlignmentPar::AmdbEta ( ) const
inherited

station Eta

Definition at line 20 of file MuonAlignmentPar.cxx.

20 { return m_eta; }

◆ AmdbJob()

int MuonAlignmentPar::AmdbJob ( ) const
inherited

Seems to correspond to the multilayer but sometimes also stEta.

Definition at line 19 of file MuonAlignmentPar.cxx.

19 { return m_job; }

◆ AmdbPhi()

int MuonAlignmentPar::AmdbPhi ( ) const
inherited

station phi

Definition at line 21 of file MuonAlignmentPar.cxx.

21 { return m_phi;}

◆ AmdbStation()

const std::string & MuonAlignmentPar::AmdbStation ( ) const
inherited

station Name

Definition at line 22 of file MuonAlignmentPar.cxx.

22 {return m_station;}

◆ identify()

const Identifier & MuonAlignmentPar::identify ( ) const
inherited

Definition at line 11 of file MuonAlignmentPar.cxx.

11 {return m_id; }

◆ meas() [1/2]

AlignmentParameters& MdtAsBuiltPar::meas ( multilayer_t  iML,
tubeSide_t  iTubeSide 
)
inlineprivate

Definition at line 70 of file MdtAsBuiltPar.h.

70  {
71  const unsigned int idx = static_cast<unsigned int>(tubeSide_t::NTUBESIDETYPES) *
72  static_cast<unsigned int>(iML) + static_cast<unsigned>(iTubeSide);
73  return m_meas.at(idx);
74  }

◆ meas() [2/2]

const AlignmentParameters& MdtAsBuiltPar::meas ( multilayer_t  iML,
tubeSide_t  iTubeSide 
) const
inlineprivate

Definition at line 75 of file MdtAsBuiltPar.h.

75  {
76  const unsigned int idx = static_cast<unsigned int>(tubeSide_t::NTUBESIDETYPES) *
77  static_cast<unsigned int>(iML) + static_cast<unsigned>(iTubeSide);
78  return m_meas.at(idx);
79  }

◆ operator<()

bool MuonAlignmentPar::operator< ( const MuonAlignmentPar other) const
inherited

Odering operater using the Identifier.

Definition at line 12 of file MuonAlignmentPar.cxx.

12 { return m_id < other.m_id; }

◆ setAlignmentParameters()

void MdtAsBuiltPar::setAlignmentParameters ( multilayer_t  iML,
tubeSide_t  iTubeSide,
float  y0,
float  z0,
float  alpha,
float  ypitch,
float  zpitch,
int  stagg 
)

Set the alignment parameters for a ML and a tube side.

Definition at line 32 of file MdtAsBuiltPar.cxx.

33  {
34  AlignmentParameters& params = meas(iML, iTubeSide);
35  params.y0 = y0;
36  params.z0 = z0;
37  params.alpha = alpha;
38  params.ypitch = ypitch;
39  params.zpitch = zpitch;
40  params.stagg = stagg;
41 }

◆ setAmdbId()

void MuonAlignmentPar::setAmdbId ( const std::string &  stName,
int  stEta,
int  stPhi,
int  stJob 
)
inherited

AMDB identifiers. They're often not the same as the ATLAS ones (TGCs)

Definition at line 13 of file MuonAlignmentPar.cxx.

13  {
14  m_station = stName;
15  m_eta = stEta;
16  m_phi = stPhi;
17  m_job = stJob;
18 }

◆ setIdentifier()

void MuonAlignmentPar::setIdentifier ( const Identifier id)
inherited

Setters and getters for the Athena Identifier.

Definition at line 10 of file MuonAlignmentPar.cxx.

10 { m_id = id; }

◆ stagg()

int MdtAsBuiltPar::stagg ( multilayer_t  iML,
tubeSide_t  iTubeSide 
) const
inline

Definition at line 52 of file MdtAsBuiltPar.h.

52 { return meas(iML, iTubeSide).stagg; }

◆ y0()

double MdtAsBuiltPar::y0 ( multilayer_t  iML,
tubeSide_t  iTubeSide 
) const
inline

Definition at line 47 of file MdtAsBuiltPar.h.

47 { return meas(iML, iTubeSide).y0; }

◆ ypitch()

double MdtAsBuiltPar::ypitch ( multilayer_t  iML,
tubeSide_t  iTubeSide 
) const
inline

Definition at line 50 of file MdtAsBuiltPar.h.

50 { return meas(iML, iTubeSide).ypitch; }

◆ z0()

double MdtAsBuiltPar::z0 ( multilayer_t  iML,
tubeSide_t  iTubeSide 
) const
inline

Definition at line 48 of file MdtAsBuiltPar.h.

48 { return meas(iML, iTubeSide).z0; }

◆ zpitch()

double MdtAsBuiltPar::zpitch ( multilayer_t  iML,
tubeSide_t  iTubeSide 
) const
inline

Definition at line 51 of file MdtAsBuiltPar.h.

51 { return meas(iML, iTubeSide).zpitch; }

Member Data Documentation

◆ m_eta

int MuonAlignmentPar::m_eta {0}
privateinherited

Definition at line 40 of file MuonAlignmentPar.h.

◆ m_id

Identifier MuonAlignmentPar::m_id {0}
privateinherited

Definition at line 38 of file MuonAlignmentPar.h.

◆ m_job

int MuonAlignmentPar::m_job {0}
privateinherited

Definition at line 42 of file MuonAlignmentPar.h.

◆ m_meas

std::array<AlignmentParameters, NMEAS> MdtAsBuiltPar::m_meas {}
private

Definition at line 68 of file MdtAsBuiltPar.h.

◆ m_phi

int MuonAlignmentPar::m_phi {0}
privateinherited

Definition at line 41 of file MuonAlignmentPar.h.

◆ m_station

std::string MuonAlignmentPar::m_station {}
privateinherited

Definition at line 39 of file MuonAlignmentPar.h.

◆ NMEAS

constexpr unsigned int MdtAsBuiltPar::NMEAS
staticconstexprprivate
Initial value:
= static_cast<unsigned int>(multilayer_t::NMLTYPES) *
static_cast<unsigned int>(tubeSide_t::NTUBESIDETYPES)

Definition at line 66 of file MdtAsBuiltPar.h.


The documentation for this class was generated from the following files:
MuonAlignmentPar::m_eta
int m_eta
Definition: MuonAlignmentPar.h:40
MdtAsBuiltPar::AlignmentParameters::y0
float y0
Definition: MdtAsBuiltPar.h:58
MdtAsBuiltPar::meas
AlignmentParameters & meas(multilayer_t iML, tubeSide_t iTubeSide)
Definition: MdtAsBuiltPar.h:70
MdtAsBuiltPar::z0
double z0(multilayer_t iML, tubeSide_t iTubeSide) const
Definition: MdtAsBuiltPar.h:48
MuonAlignmentPar::m_job
int m_job
Definition: MuonAlignmentPar.h:42
MdtAsBuiltPar::AlignmentParameters::alpha
float alpha
Definition: MdtAsBuiltPar.h:60
MdtAsBuiltPar::AlignmentParameters::z0
float z0
Definition: MdtAsBuiltPar.h:59
MdtAsBuiltPar::m_meas
std::array< AlignmentParameters, NMEAS > m_meas
Definition: MdtAsBuiltPar.h:68
MuonAlignmentPar::m_phi
int m_phi
Definition: MuonAlignmentPar.h:41
MdtAsBuiltPar::ypitch
double ypitch(multilayer_t iML, tubeSide_t iTubeSide) const
Definition: MdtAsBuiltPar.h:50
MdtAsBuiltPar::multilayer_t::NMLTYPES
@ NMLTYPES
MdtAsBuiltPar::AlignmentParameters::zpitch
float zpitch
Definition: MdtAsBuiltPar.h:62
MdtAsBuiltPar::AlignmentParameters::ypitch
float ypitch
Definition: MdtAsBuiltPar.h:61
MdtAsBuiltPar::stagg
int stagg(multilayer_t iML, tubeSide_t iTubeSide) const
Definition: MdtAsBuiltPar.h:52
MdtAsBuiltPar::zpitch
double zpitch(multilayer_t iML, tubeSide_t iTubeSide) const
Definition: MdtAsBuiltPar.h:51
MuonAlignmentPar::m_station
std::string m_station
Definition: MuonAlignmentPar.h:39
id
SG::auxid_t id
Definition: Control/AthContainers/Root/debug.cxx:220
MdtAsBuiltPar::alpha
double alpha(multilayer_t iML, tubeSide_t iTubeSide) const
Definition: MdtAsBuiltPar.h:49
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
MdtAsBuiltPar::tubeSide_t::NTUBESIDETYPES
@ NTUBESIDETYPES
MuonAlignmentPar::m_id
Identifier m_id
Definition: MuonAlignmentPar.h:38
LArNewCalib_DelayDump_OFC_Cali.idx
idx
Definition: LArNewCalib_DelayDump_OFC_Cali.py:69
MdtAsBuiltPar::y0
double y0(multilayer_t iML, tubeSide_t iTubeSide) const
Definition: MdtAsBuiltPar.h:47
PowhegControl_ttFCNC_NLO.params
params
Definition: PowhegControl_ttFCNC_NLO.py:226
MdtAsBuiltPar::AlignmentParameters::stagg
int stagg
Definition: MdtAsBuiltPar.h:63