Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
PatternCnvAlg.h
Go to the documentation of this file.
1 
2 /*
3  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
4 */
5 #ifndef MUONPATTERNCNV_MUONPATTERNCNVALG_H
6 #define MUONPATTERNCNV_MUONPATTERNCNVALG_H
7 
12 
18 namespace MuonR4{
23  public:
24 
25  using AthReentrantAlgorithm::AthReentrantAlgorithm;
26 
27  StatusCode initialize() override final;
28 
29  StatusCode execute(const EventContext& ctx) const override final;
30 
31  private:
32  /*** @brief Fetches a MuonPrepData object from the PrepData container by matching the parsed Identifier.
33  * Nullptr is returned if the object does not exist and an error message is printed
34  * @param prdId: Identifier of the measurement to fetch
35  * @param prdContainer: Pointer to the MuonPrepData container to fetch the object from.
36  */
37  template <class PrdType>
38  const PrdType* fetchPrd(const Identifier& prdId,
39  const Muon::MuonPrepDataContainerT<PrdType>* prdContainer) const;
40 
48  StatusCode convertSeed(const EventContext& ctx,
49  const SegmentSeedContainer& seedContainer,
50  ::MuonPatternCombinationCollection& patternContainer,
51  Muon::HoughDataPerSectorVec& houghDataSec) const;
52 
55  Muon::HoughDataPerSectorVec& houghDataSec)const;
56 
57 
58 
59 
61  "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
63  SG::ReadHandleKey<Muon::TgcPrepDataContainer> m_keyTgc{this, "TgcKey", "TGC_MeasurementsAllBCs"};
64  SG::ReadHandleKey<Muon::RpcPrepDataContainer> m_keyRpc{this, "RpcKey", "RPC_Measurements"};
65  SG::ReadHandleKey<Muon::MdtPrepDataContainer> m_keyMdt{this, "MdtKey", "MDT_DriftCircles"};
66  SG::ReadHandleKey<Muon::sTgcPrepDataContainer> m_keysTgc{this, "sTgcKey", "STGC_Measurements"};
67  SG::ReadHandleKey<Muon::MMPrepDataContainer> m_keyMM{this, "MmKey", "MM_Measurements"};
68 
69  SG::ReadHandleKeyArray<SegmentSeedContainer> m_readKeys{this, "Patterns", {"MuonHoughStationSegmentSeeds"}};
70  SG::ReadHandleKey<ActsGeometryContext> m_geoCtxKey{this, "AlignmentKey", "ActsAlignment", "cond handle key"};
71 
72  SG::WriteHandleKey<::MuonPatternCombinationCollection> m_combiKey{this, "PatternCombiKey", "MuonLayerHoughCombis"};
74  "HoughDataPerSectorVec", "HoughDataPerSectorVec key"};
75 
76  };
77 
78 }
79 
80 #endif
ReadHandleKeyArray.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
MuonR4::PatternCnvAlg::convertSeed
StatusCode convertSeed(const EventContext &ctx, const SegmentSeedContainer &seedContainer, ::MuonPatternCombinationCollection &patternContainer, Muon::HoughDataPerSectorVec &houghDataSec) const
Converts each segment seed first into a PatternCombination - serving as input for the legacy segment ...
Definition: PatternCnvAlg.cxx:55
Muon::MuonPrepDataContainer
Template for Muon PRD containers (which are basically collections of MuonPrepDataCollections).
Definition: MuonPrepDataContainer.h:42
MuonR4::PatternCnvAlg::m_geoCtxKey
SG::ReadHandleKey< ActsGeometryContext > m_geoCtxKey
Definition: PatternCnvAlg.h:70
MuonR4::PatternCnvAlg::m_keyTgc
SG::ReadHandleKey< Muon::TgcPrepDataContainer > m_keyTgc
Prep data container keys.
Definition: PatternCnvAlg.h:63
MuonR4::PatternCnvAlg::m_dataPerSecKey
SG::WriteHandleKey< Muon::HoughDataPerSectorVec > m_dataPerSecKey
Definition: PatternCnvAlg.h:73
MuonR4::PatternCnvAlg::m_readKeys
SG::ReadHandleKeyArray< SegmentSeedContainer > m_readKeys
Definition: PatternCnvAlg.h:69
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
MuonPrepDataContainer.h
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:74
MuonR4::PatternCnvAlg::fetchPrd
const PrdType * fetchPrd(const Identifier &prdId, const Muon::MuonPrepDataContainerT< PrdType > *prdContainer) const
Definition: PatternCnvAlg.cxx:174
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
Muon::MuonPatternChamberIntersect
This class holds information needed for the Moore and MoMu pattern recognition for a muon chamber.
Definition: MuonPatternChamberIntersect.h:38
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
MuonPatternContainer.h
MuonPatternCombinationCollection.h
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
MuonR4::PatternCnvAlg::m_combiKey
SG::WriteHandleKey<::MuonPatternCombinationCollection > m_combiKey
Definition: PatternCnvAlg.h:72
AthReentrantAlgorithm.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
MuonR4::PatternCnvAlg::m_keyRpc
SG::ReadHandleKey< Muon::RpcPrepDataContainer > m_keyRpc
Definition: PatternCnvAlg.h:64
MuonR4
This header ties the generic definitions in this package.
Definition: HoughEventData.h:16
Muon::HoughDataPerSectorVec
Definition: HoughDataPerSec.h:65
HoughDataPerSec.h
MuonR4::PatternCnvAlg::convertMaximum
void convertMaximum(const Muon::MuonPatternChamberIntersect &intersect, Muon::HoughDataPerSectorVec &houghDataSec) const
: Converts the maximum back into the HoughDataPersector
Definition: PatternCnvAlg.cxx:132
MuonR4::PatternCnvAlg::m_keyMM
SG::ReadHandleKey< Muon::MMPrepDataContainer > m_keyMM
Definition: PatternCnvAlg.h:67
Amg::intersect
std::optional< double > intersect(const AmgVector(N)&posA, const AmgVector(N)&dirA, const AmgVector(N)&posB, const AmgVector(N)&dirB)
Calculates the point B' along the line B that's closest to a second line A.
Definition: GeoPrimitivesHelpers.h:347
MuonR4::PatternCnvAlg::initialize
StatusCode initialize() override final
Definition: PatternCnvAlg.cxx:17
MuonR4::PatternCnvAlg::m_keyMdt
SG::ReadHandleKey< Muon::MdtPrepDataContainer > m_keyMdt
Definition: PatternCnvAlg.h:65
MuonR4::PatternCnvAlg::execute
StatusCode execute(const EventContext &ctx) const override final
Definition: PatternCnvAlg.cxx:33
MuonR4::PatternCnvAlg::m_keysTgc
SG::ReadHandleKey< Muon::sTgcPrepDataContainer > m_keysTgc
Definition: PatternCnvAlg.h:66
MuonR4::PatternCnvAlg
The MuonPatternCnvAlg converts the SegmentSeeds produced by the R4 pattern recognition chain into the...
Definition: PatternCnvAlg.h:22
IMuonIdHelperSvc.h
MuonR4::PatternCnvAlg::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: PatternCnvAlg.h:60
ServiceHandle< Muon::IMuonIdHelperSvc >
Identifier
Definition: IdentifierFieldParser.cxx:14