ATLAS Offline Software
Loading...
Searching...
No Matches
MuonPhaseII/MuonDetDescr/MuonGeoModelTestR4/src/GeoModelMmTest.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef MUONGEOMODELTESTR4_GEOMODELMmTEST_H
5#define MUONGEOMODELTESTR4_GEOMODELMmTEST_H
6
8#include <set>
17namespace MuonGMR4{
18
20 public:
22
23 ~GeoModelMmTest() = default;
24
25 StatusCode execute() override;
26 StatusCode initialize() override;
27 StatusCode finalize() override;
28
29 unsigned int cardinality() const override final {return 1;}
30
31 private:
33 "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
34
35 SG::ReadHandleKey<ActsTrk::GeometryContext> m_geoCtxKey{this, "AlignmentKey", "ActsAlignment", "cond handle key"};
36
38 std::set<Identifier> m_testStations{};
39
41 //e.g. MM_SM2Q1
42 Gaudi::Property<std::vector<std::string>> m_selectStat{this, "TestStations", {}};
43 Gaudi::Property<std::vector<std::string>> m_excludeStat{this, "ExcludeStations", {}};
44
46
47 StatusCode dumpToTree(const EventContext& ctx,
48 const ActsTrk::GeometryContext& gctx,
49 const MmReadoutElement* readoutEle);
50
51 MuonVal::MuonTesterTree m_tree{"MmGeoModelTree", "GEOMODELTESTER"};
52
54 MuonVal::ScalarBranch<unsigned short>& m_stIndex{m_tree.newScalar<unsigned short>("stationIndex")}; // 55(S) or 56(L)
55 MuonVal::ScalarBranch<short>& m_stEta{m_tree.newScalar<short>("stationEta")}; // [-2, 2]
56 MuonVal::ScalarBranch<short>& m_stPhi{m_tree.newScalar<short>("stationPhi")}; // [1, 8]
57 MuonVal::ScalarBranch<short>& m_stML{m_tree.newScalar<short>("multilayer")}; // {1, 2}
58 MuonVal::ScalarBranch<std::string>& m_chamberDesign{m_tree.newScalar<std::string>("chamberDesign")};
59 MuonVal::ScalarBranch<float>& m_stStripPitch{m_tree.newScalar<float>("stripPitch")};
60
61
65
68 MuonVal::VectorBranch<uint8_t>& m_stripRotGasGap{m_tree.newVector<uint8_t>("stripRotGasGap")};
70 MuonVal::VectorBranch<int>& m_readoutSide{m_tree.newVector<int>("stripReadoutSide")};
71
72 MuonVal::VectorBranch<unsigned>& m_firstStrip{m_tree.newVector<unsigned>("firstStrip")};
73 MuonVal::VectorBranch<unsigned>& m_nStrips{m_tree.newVector<unsigned>("nStrips")};
74
75
77 MuonVal::VectorBranch<short>& m_gasGap{m_tree.newVector<short>("gasGap")}; // gas gap number
78 MuonVal::VectorBranch<bool>& m_isStereo{m_tree.newVector<bool>("isStereo")};
83
84 MuonVal::VectorBranch<float>& m_stripLength{m_tree.newVector<float>("stripLength")};
85 MuonVal::VectorBranch<uint>& m_channel{m_tree.newVector<uint>("channel")}; // strip number
86
88 MuonVal::ScalarBranch<float>& m_moduleHeight{m_tree.newScalar<float>("moduleHeight")}; //active area's Height
89 MuonVal::ScalarBranch<float>& m_moduleWidthS{m_tree.newScalar<float>("moduleWidthS")}; //active area's small width
90 MuonVal::ScalarBranch<float>& m_moduleWidthL{m_tree.newScalar<float>("moduleWidthL")}; //active area's large width
92 MuonVal::ScalarBranch<float>& m_ActiveHeightR{m_tree.newScalar<float>("ActiveHeightR")}; //active area's Height
93 MuonVal::ScalarBranch<float>& m_ActiveWidthS{m_tree.newScalar<float>("ActiveWidthS")}; //active area's small width
94 MuonVal::ScalarBranch<float>& m_ActiveWidthL{m_tree.newScalar<float>("ActiveWidthL")}; //active area's large width
95
96
97 };
98}
99#endif
unsigned int uint
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
MuonVal::ScalarBranch< unsigned short > & m_stIndex
Identifier of the readout element.
Gaudi::Property< std::vector< std::string > > m_selectStat
String should be formated like MM_<Large/Small Sector + Module type><Quadruplet number>
MuonVal::CoordSystemsBranch m_stripRot
Rotation matrix of the respective strip layers.
MuonVal::ScalarBranch< float > & m_ActiveHeightR
GasGap Lengths for debug.
std::set< Identifier > m_testStations
Set of stations to be tested.
MuonVal::ScalarBranch< float > & m_moduleHeight
Chamber Length for debug.
MuonVal::CoordTransformBranch m_readoutTransform
Transformation of the readout element (Translation, ColX, ColY, ColZ)
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
StatusCode dumpToTree(const EventContext &ctx, const ActsTrk::GeometryContext &gctx, const MmReadoutElement *readoutEle)
Helper class to dump the Amg::Transformations into 4 three vector branches.
Helper class to dump the Amg::Transformations into a single three vector branch The first entry is th...
Property holding a SG store/key/clid from which a ReadHandle is made.
The ReadoutGeomCnvAlg converts the Run4 Readout geometry build from the GeoModelXML into the legacy M...