ATLAS Offline Software
Loading...
Searching...
No Matches
MdtAsBuiltPar.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7std::ostream& operator<<(std::ostream& ostr, const MdtAsBuiltPar& par) {
8 ostr<<"MdtAsBuilt AMDB id (name,eta,phi,job)=(";
9 ostr<<par.AmdbStation()<<",";
10 ostr<<par.AmdbEta()<<",";
11 ostr<<par.AmdbPhi()<<",";
12 ostr<<par.AmdbJob()<<"), "<<std::endl;
13 using multilayer_t = MdtAsBuiltPar::multilayer_t;
14 using tubeSide_t = MdtAsBuiltPar::tubeSide_t;
15 for (const multilayer_t ml : {multilayer_t::ML1, multilayer_t::ML2}){
16 ostr<<" chamber multi-layer " << static_cast<unsigned int>(ml)<<",";
17 for (const tubeSide_t side : {tubeSide_t::POS, tubeSide_t::NEG}){
18 ostr << "(y0,z0,alpha,ypitch,zpitch,stagg) at ";
19 ostr << (side == tubeSide_t::POS ? "positive" : "negative")<<" side = {";
20 ostr << par.y0(ml, side) <<", ";
21 ostr << par.z0(ml, side) <<", ";
22 ostr << par.alpha(ml, side) <<", ";
23 ostr << par.ypitch(ml, side) <<", ";
24 ostr << par.zpitch(ml, side) <<", ";
25 ostr << par.stagg(ml, side) <<"}, ";
26 }
27 ostr<<std::endl;
28 }
29 return ostr;
30}
31
32void MdtAsBuiltPar::setAlignmentParameters(multilayer_t iML, tubeSide_t iTubeSide, float y0, float z0, float alpha, float ypitch,
33 float zpitch, int stagg) {
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}
42
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