ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonPhaseII
MuonCnv
MuonPatternCnv
src
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
8
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
9
#include "
StoreGate/ReadHandleKey.h
"
10
#include "
StoreGate/WriteHandleKey.h
"
11
#include "
StoreGate/ReadHandleKeyArray.h
"
12
13
#include "
MuonIdHelpers/IMuonIdHelperSvc.h
"
14
#include "
MuonPrepRawData/MuonPrepDataContainer.h
"
15
#include "
MuonRecToolInterfaces/HoughDataPerSec.h
"
16
#include "
MuonPattern/MuonPatternCombinationCollection.h
"
17
#include "
MuonPatternEvent/MuonPatternContainer.h
"
18
namespace
MuonR4
{
22
class
PatternCnvAlg
:
public
AthReentrantAlgorithm
{
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
54
void
convertMaximum
(
const
Muon::MuonPatternChamberIntersect
& intersect,
55
Muon::HoughDataPerSectorVec
& houghDataSec)
const
;
56
57
58
59
60
ServiceHandle<Muon::IMuonIdHelperSvc>
m_idHelperSvc
{
this
,
"MuonIdHelperSvc"
,
61
"Muon::MuonIdHelperSvc/MuonIdHelperSvc"
};
62
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
ActsTrk::GeoContextReadKey_t
m_geoCtxKey
{
this
,
"AlignmentKey"
,
"ActsAlignment"
,
"cond handle key"
};
71
72
SG::WriteHandleKey<::MuonPatternCombinationCollection>
m_combiKey
{
this
,
"PatternCombiKey"
,
"MuonLayerHoughCombis"
};
73
SG::WriteHandleKey<Muon::HoughDataPerSectorVec>
m_dataPerSecKey
{
this
,
"HoughDataPerSecKey"
,
74
"HoughDataPerSectorVec"
,
"HoughDataPerSectorVec key"
};
75
76
};
77
78
}
79
80
#endif
AthReentrantAlgorithm.h
HoughDataPerSec.h
IMuonIdHelperSvc.h
MuonPatternCombinationCollection.h
MuonPatternCombinationCollection
DataVector< Muon::MuonPatternCombination > MuonPatternCombinationCollection
This typedef represents a collection of MuonPatternCombination objects.
Definition
MuonPatternCombinationCollection.h:17
MuonPatternContainer.h
MuonPrepDataContainer.h
ReadHandleKeyArray.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
MuonR4::PatternCnvAlg
The MuonPatternCnvAlg converts the SegmentSeeds produced by the R4 pattern recognition chain into the...
Definition
PatternCnvAlg.h:22
MuonR4::PatternCnvAlg::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition
PatternCnvAlg.h:60
MuonR4::PatternCnvAlg::fetchPrd
const PrdType * fetchPrd(const Identifier &prdId, const Muon::MuonPrepDataContainerT< PrdType > *prdContainer) const
Definition
PatternCnvAlg.cxx:174
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_combiKey
SG::WriteHandleKey<::MuonPatternCombinationCollection > m_combiKey
Definition
PatternCnvAlg.h:72
MuonR4::PatternCnvAlg::m_keysTgc
SG::ReadHandleKey< Muon::sTgcPrepDataContainer > m_keysTgc
Definition
PatternCnvAlg.h:66
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::m_keyRpc
SG::ReadHandleKey< Muon::RpcPrepDataContainer > m_keyRpc
Definition
PatternCnvAlg.h:64
MuonR4::PatternCnvAlg::m_keyMM
SG::ReadHandleKey< Muon::MMPrepDataContainer > m_keyMM
Definition
PatternCnvAlg.h:67
MuonR4::PatternCnvAlg::m_keyTgc
SG::ReadHandleKey< Muon::TgcPrepDataContainer > m_keyTgc
Prep data container keys.
Definition
PatternCnvAlg.h:63
MuonR4::PatternCnvAlg::m_readKeys
SG::ReadHandleKeyArray< SegmentSeedContainer > m_readKeys
Definition
PatternCnvAlg.h:69
MuonR4::PatternCnvAlg::m_geoCtxKey
ActsTrk::GeoContextReadKey_t m_geoCtxKey
Definition
PatternCnvAlg.h:70
MuonR4::PatternCnvAlg::execute
StatusCode execute(const EventContext &ctx) const override final
Definition
PatternCnvAlg.cxx:33
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
MuonR4::PatternCnvAlg::m_dataPerSecKey
SG::WriteHandleKey< Muon::HoughDataPerSectorVec > m_dataPerSecKey
Definition
PatternCnvAlg.h:73
Muon::MuonPatternChamberIntersect
This class holds information needed for the Moore and MoMu pattern recognition for a muon chamber.
Definition
MuonPatternChamberIntersect.h:38
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition
StoreGate/StoreGate/WriteHandleKey.h:40
ServiceHandle
Definition
ClusterMakerTool.h:36
ActsTrk::GeoContextReadKey_t
SG::ReadHandleKey< GeometryContext > GeoContextReadKey_t
Abrivate the ReadHandleKey to declare the data dependency on the Geometry context.
Definition
GeometryContext.h:64
Identifier
Definition
IdentifierFieldParser.cxx:14
MuonR4
This header ties the generic definitions in this package.
Definition
GlobalPattern.h:14
MuonR4::SegmentSeedContainer
DataVector< SegmentSeed > SegmentSeedContainer
Definition
MuonPatternContainer.h:15
Muon::MuonPrepDataContainerT
MuonPrepDataContainer< MuonPrepDataCollection< PrdType > > MuonPrepDataContainerT
Definition
MuonPrepDataContainer.h:92
SG::ReadHandleKeyArray
HandleKeyArray< ReadHandle< T >, ReadHandleKey< T >, Gaudi::DataHandle::Reader > ReadHandleKeyArray
Definition
StoreGate/StoreGate/ReadHandleKeyArray.h:32
Muon::HoughDataPerSectorVec
Definition
HoughDataPerSec.h:68
Generated on
for ATLAS Offline Software by
1.17.0