ATLAS Offline Software
Loading...
Searching...
No Matches
MdtAsBuiltPar.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
6#include <iostream>
7
8std::ostream& operator<<(std::ostream& ostr, const MdtAsBuiltPar& par) {
9 ostr<<"MdtAsBuilt AMDB id (name,eta,phi,job)=(";
10 ostr<<par.AmdbStation()<<",";
11 ostr<<par.AmdbEta()<<",";
12 ostr<<par.AmdbPhi()<<",";
13 ostr<<par.AmdbJob()<<"), \n";
14 using multilayer_t = MdtAsBuiltPar::multilayer_t;
15 using tubeSide_t = MdtAsBuiltPar::tubeSide_t;
16 for (const multilayer_t ml : {multilayer_t::ML1, multilayer_t::ML2}){
17 ostr<<" chamber multi-layer " << static_cast<unsigned int>(ml)<<",";
18 for (const tubeSide_t side : {tubeSide_t::POS, tubeSide_t::NEG}){
19 ostr << "(y0,z0,alpha,ypitch,zpitch,stagg) at ";
20 ostr << (side == tubeSide_t::POS ? "positive" : "negative")<<" side = {";
21 ostr << par.y0(ml, side) <<", ";
22 ostr << par.z0(ml, side) <<", ";
23 ostr << par.alpha(ml, side) <<", ";
24 ostr << par.ypitch(ml, side) <<", ";
25 ostr << par.zpitch(ml, side) <<", ";
26 ostr << par.stagg(ml, side) <<"}, ";
27 }
28 ostr<<std::endl;
29 }
30 return ostr;
31}
32
33void MdtAsBuiltPar::setAlignmentParameters(multilayer_t iML, tubeSide_t iTubeSide, float y0, float z0, float alpha, float ypitch,
34 float zpitch, int stagg) {
35 AlignmentParameters& params = meas(iML, iTubeSide);
36 params.y0 = y0;
37 params.z0 = z0;
38 params.alpha = alpha;
39 params.ypitch = ypitch;
40 params.zpitch = zpitch;
41 params.stagg = stagg;
42}
43
std::ostream & operator<<(std::ostream &ostr, const MdtAsBuiltPar &par)
Container classifier the MDT as-built parameters See parameter description in http://atlas-muon-align...
int stagg(multilayer_t iML, tubeSide_t iTubeSide) const
double zpitch(multilayer_t iML, tubeSide_t iTubeSide) const
double ypitch(multilayer_t iML, tubeSide_t iTubeSide) const
double alpha(multilayer_t iML, tubeSide_t iTubeSide) const
multilayer_t
MDT multi-layer index.
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.
AlignmentParameters & meas(multilayer_t iML, tubeSide_t iTubeSide)
tubeSide_t
MDT tube side.
double z0(multilayer_t iML, tubeSide_t iTubeSide) const
double y0(multilayer_t iML, tubeSide_t iTubeSide) const