ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonPhaseII
MuonConditions
MuonAlignmentDataR4
MuonAlignmentDataR4
MdtAlignmentStore.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef MUONALIGNMENTDATA_MDTALIGNMENTSTORE_H
6
#define MUONALIGNMENTDATA_MDTALIGNMENTSTORE_H
7
8
9
#include <
ActsGeometryInterfaces/DetectorAlignStore.h
>
10
#include <
MuonIdHelpers/IMuonIdHelperSvc.h
>
11
12
#include "Identifier/Identifier.h"
13
#include "
Identifier/IdentifierHash.h
"
//for moduleHash
14
#include <vector>
15
16
class
BLinePar
;
17
class
MdtAsBuiltPar
;
18
namespace
Muon
{
19
class
IMuonIdHelperSvc
;
20
}
26
class
MdtAlignmentStore
final:
public
ActsTrk::DetectorAlignStore::InternalAlignStore
{
27
public
:
28
MdtAlignmentStore
(
const
Muon::IMuonIdHelperSvc
* idHelperSvc);
32
struct
chamberDistortions
{
33
const
BLinePar
*
bLine
{
nullptr
};
34
const
MdtAsBuiltPar
*
asBuilt
{
nullptr
};
35
operator
bool()
const
{
36
return
bLine
||
asBuilt
;
37
}
38
};
39
40
chamberDistortions
getDistortion
(
const
Identifier
& detElId)
const
{
41
const
unsigned
int
idx =
m_idHelperSvc
->moduleHash(detElId);
42
assert(
m_idHelperSvc
->technologyIndex(detElId) ==
Muon::MuonStationIndex::TechnologyIndex::MDT
);
43
return
idx <
m_alignMap
.size() ?
m_alignMap
[idx] :
chamberDistortions
{};
44
}
45
void
storeDistortion
(
const
Identifier
& detElId,
const
BLinePar
* bline,
const
MdtAsBuiltPar
* asBuilt);
46
private
:
47
const
Muon::IMuonIdHelperSvc
*
m_idHelperSvc
{
nullptr
};
48
std::vector<chamberDistortions>
m_alignMap
{};
49
};
50
51
#endif
DetectorAlignStore.h
IMuonIdHelperSvc.h
IdentifierHash.h
BLinePar
Definition
BLinePar.h:14
MdtAlignmentStore::m_alignMap
std::vector< chamberDistortions > m_alignMap
Definition
MdtAlignmentStore.h:48
MdtAlignmentStore::m_idHelperSvc
const Muon::IMuonIdHelperSvc * m_idHelperSvc
Definition
MdtAlignmentStore.h:47
MdtAlignmentStore::MdtAlignmentStore
MdtAlignmentStore(const Muon::IMuonIdHelperSvc *idHelperSvc)
Definition
MdtAlignmentStore.cxx:11
MdtAlignmentStore::getDistortion
chamberDistortions getDistortion(const Identifier &detElId) const
Returns a chamber distortion that's cached for the corresponding Mdt chamber element.
Definition
MdtAlignmentStore.h:40
MdtAlignmentStore::storeDistortion
void storeDistortion(const Identifier &detElId, const BLinePar *bline, const MdtAsBuiltPar *asBuilt)
Definition
MdtAlignmentStore.cxx:16
MdtAsBuiltPar
Container classifier the MDT as-built parameters See parameter description in http://atlas-muon-align...
Definition
MdtAsBuiltPar.h:19
Muon::IMuonIdHelperSvc
Interface for Helper service that creates muon Identifiers and can be used to print Identifiers.
Definition
IMuonIdHelperSvc.h:27
Identifier
Definition
IdentifierFieldParser.cxx:14
Muon::MuonStationIndex::TechnologyIndex::MDT
@ MDT
Definition
MuonStationIndex.h:57
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition
TrackSystemController.h:46
ActsTrk::DetectorAlignStore::InternalAlignStore
The muon system contains additional parameters such as B-lines, as-built, passivation.
Definition
DetectorAlignStore.h:58
MdtAlignmentStore::chamberDistortions
Helper struct to store the pointer to the Mdt distrotion parameters, namely the As-built and the BLin...
Definition
MdtAlignmentStore.h:32
MdtAlignmentStore::chamberDistortions::asBuilt
const MdtAsBuiltPar * asBuilt
Definition
MdtAlignmentStore.h:34
MdtAlignmentStore::chamberDistortions::bLine
const BLinePar * bLine
Definition
MdtAlignmentStore.h:33
Generated on
for ATLAS Offline Software by
1.17.0