ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
Acts
ActsObjectDecoration
src
PixelClusterSiHitDecoratorAlg.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 ACTSOBJECTDECORATION_PIXELCLUSTER_SIHIT_DECORATORALG_H
6
#define ACTSOBJECTDECORATION_PIXELCLUSTER_SIHIT_DECORATORALG_H
7
8
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
9
#include "
StoreGate/ReadHandleKey.h
"
10
#include "
StoreGate/WriteDecorHandleKey.h
"
11
#include "
xAODTracking/TrackMeasurementValidationContainer.h
"
12
#include "
InDetSimData/InDetSimDataCollection.h
"
13
#include "
InDetReadoutGeometry/SiDetectorElementCollection.h
"
14
#include "
InDetReadoutGeometry/SiDetectorElement.h
"
15
#include "
InDetSimEvent/SiHitCollection.h
"
16
#include "
InDetIdentifier/PixelID.h
"
17
18
namespace
ActsTrk
{
19
20
class
PixelClusterSiHitDecoratorAlg
21
:
public
AthReentrantAlgorithm
{
22
public
:
23
PixelClusterSiHitDecoratorAlg
(
const
std::string &name,ISvcLocator *pSvcLocator);
24
virtual
~PixelClusterSiHitDecoratorAlg
() =
default
;
25
26
virtual
StatusCode
initialize
()
override
;
27
virtual
StatusCode
execute
(
const
EventContext& ctx)
const override
;
28
29
private
:
30
std::vector<SiHit>
31
findAllHitsCompatibleWithCluster
(
const
std::vector< Identifier >& rdos,
32
const
InDetDD::SiDetectorElement
& element,
33
const
std::vector<const SiHit*>& sihits,
34
const
std::vector< std::vector< int > >& sdoTracks)
const
;
35
36
private
:
37
SG::ReadHandleKey< xAOD::TrackMeasurementValidationContainer >
m_inputMeasurementsKey
{
this
,
"Measurements"
,
""
};
38
SG::ReadHandleKey< InDetSimDataCollection >
m_SDOcontainer_key
{
this
,
"SDOs"
,
""
};
39
SG::ReadHandleKey< SiHitCollection >
m_siHitsKey
{
this
,
"SiHits"
,
""
};
40
SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection>
m_pixelDetEleCollKey
{
this
,
"PixelDetEleCollKey"
,
"ITkPixelDetectorElementCollection"
};
41
42
// detector decorator
43
SG::ReadDecorHandleKey<xAOD::TrackMeasurementValidationContainer>
m_measurement_detectorElementID
{
this
,
"MeasurementDetectorElementID"
,
m_inputMeasurementsKey
,
"detectorElementID"
};
44
45
// SDO decorations
46
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sdo_words
{
this
,
"SdoWords"
,
m_inputMeasurementsKey
,
"sdo_words"
};
47
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sdo_depositsBarcode
{
this
,
"SdoDepositsBarcode"
,
m_inputMeasurementsKey
,
"sdo_depositsBarcode"
};
48
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sdo_depositsEnergy
{
this
,
"SdoDepositsEnergy"
,
m_inputMeasurementsKey
,
"sdo_depositsEnergy"
};
49
50
// SiHit decorations
51
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sihit_energyDeposit_decor_key
{
this
,
"SiHitEnergyDeposit"
,
m_inputMeasurementsKey
,
"sihit_energyDeposit"
};
52
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sihit_meanTime_decor_key
{
this
,
"SiHitMeanTime"
,
m_inputMeasurementsKey
,
"sihit_meanTime"
};
53
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sihit_barcode_decor_key
{
this
,
"SiHitBarcode"
,
m_inputMeasurementsKey
,
"sihit_barcode"
};
54
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sihit_pdgid_decor_key
{
this
,
"SiHitPdgId"
,
m_inputMeasurementsKey
,
"sihit_pdgid"
};
55
56
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sihit_startPosX_decor_key
{
this
,
"SiHitStartPosX"
,
m_inputMeasurementsKey
,
"sihit_startPosX"
};
57
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sihit_startPosY_decor_key
{
this
,
"SiHitStartPosY"
,
m_inputMeasurementsKey
,
"sihit_startPosY"
};
58
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sihit_startPosZ_decor_key
{
this
,
"SiHitStartPosZ"
,
m_inputMeasurementsKey
,
"sihit_startPosZ"
};
59
60
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sihit_endPosX_decor_key
{
this
,
"SiHitStopPosX"
,
m_inputMeasurementsKey
,
"sihit_endPosX"
};
61
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sihit_endPosY_decor_key
{
this
,
"SiHitStopPosY"
,
m_inputMeasurementsKey
,
"sihit_endPosY"
};
62
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer >
m_sihit_endPosZ_decor_key
{
this
,
"SiHitStopPosZ"
,
m_inputMeasurementsKey
,
"sihit_endPosZ"
};
63
64
Gaudi::Property<bool>
m_useSiHitsGeometryMatching
{
this
,
"UseSiHitsGeometryMatching"
,
true
};
65
66
const
PixelID
*
m_PixelHelper
{
nullptr
};
67
};
68
69
}
70
71
#endif
AthReentrantAlgorithm.h
InDetSimDataCollection.h
PixelID.h
This is an Identifier helper class for the Pixel subdetector.
SiDetectorElementCollection.h
SiDetectorElement.h
SiHitCollection.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
TrackMeasurementValidationContainer.h
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sihit_meanTime_decor_key
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sihit_meanTime_decor_key
Definition
PixelClusterSiHitDecoratorAlg.h:52
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sihit_barcode_decor_key
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sihit_barcode_decor_key
Definition
PixelClusterSiHitDecoratorAlg.h:53
ActsTrk::PixelClusterSiHitDecoratorAlg::initialize
virtual StatusCode initialize() override
Definition
PixelClusterSiHitDecoratorAlg.cxx:20
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sihit_startPosY_decor_key
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sihit_startPosY_decor_key
Definition
PixelClusterSiHitDecoratorAlg.h:57
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sihit_endPosY_decor_key
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sihit_endPosY_decor_key
Definition
PixelClusterSiHitDecoratorAlg.h:61
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sihit_startPosZ_decor_key
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sihit_startPosZ_decor_key
Definition
PixelClusterSiHitDecoratorAlg.h:58
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sihit_energyDeposit_decor_key
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sihit_energyDeposit_decor_key
Definition
PixelClusterSiHitDecoratorAlg.h:51
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sdo_depositsEnergy
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sdo_depositsEnergy
Definition
PixelClusterSiHitDecoratorAlg.h:48
ActsTrk::PixelClusterSiHitDecoratorAlg::m_siHitsKey
SG::ReadHandleKey< SiHitCollection > m_siHitsKey
Definition
PixelClusterSiHitDecoratorAlg.h:39
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sihit_pdgid_decor_key
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sihit_pdgid_decor_key
Definition
PixelClusterSiHitDecoratorAlg.h:54
ActsTrk::PixelClusterSiHitDecoratorAlg::~PixelClusterSiHitDecoratorAlg
virtual ~PixelClusterSiHitDecoratorAlg()=default
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sihit_endPosX_decor_key
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sihit_endPosX_decor_key
Definition
PixelClusterSiHitDecoratorAlg.h:60
ActsTrk::PixelClusterSiHitDecoratorAlg::m_SDOcontainer_key
SG::ReadHandleKey< InDetSimDataCollection > m_SDOcontainer_key
Definition
PixelClusterSiHitDecoratorAlg.h:38
ActsTrk::PixelClusterSiHitDecoratorAlg::m_measurement_detectorElementID
SG::ReadDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_measurement_detectorElementID
Definition
PixelClusterSiHitDecoratorAlg.h:43
ActsTrk::PixelClusterSiHitDecoratorAlg::PixelClusterSiHitDecoratorAlg
PixelClusterSiHitDecoratorAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition
PixelClusterSiHitDecoratorAlg.cxx:15
ActsTrk::PixelClusterSiHitDecoratorAlg::findAllHitsCompatibleWithCluster
std::vector< SiHit > findAllHitsCompatibleWithCluster(const std::vector< Identifier > &rdos, const InDetDD::SiDetectorElement &element, const std::vector< const SiHit * > &sihits, const std::vector< std::vector< int > > &sdoTracks) const
Definition
PixelClusterSiHitDecoratorAlg.cxx:184
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sihit_endPosZ_decor_key
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sihit_endPosZ_decor_key
Definition
PixelClusterSiHitDecoratorAlg.h:62
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sdo_words
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sdo_words
Definition
PixelClusterSiHitDecoratorAlg.h:46
ActsTrk::PixelClusterSiHitDecoratorAlg::m_useSiHitsGeometryMatching
Gaudi::Property< bool > m_useSiHitsGeometryMatching
Definition
PixelClusterSiHitDecoratorAlg.h:64
ActsTrk::PixelClusterSiHitDecoratorAlg::m_pixelDetEleCollKey
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_pixelDetEleCollKey
Definition
PixelClusterSiHitDecoratorAlg.h:40
ActsTrk::PixelClusterSiHitDecoratorAlg::m_inputMeasurementsKey
SG::ReadHandleKey< xAOD::TrackMeasurementValidationContainer > m_inputMeasurementsKey
Definition
PixelClusterSiHitDecoratorAlg.h:37
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sihit_startPosX_decor_key
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sihit_startPosX_decor_key
Definition
PixelClusterSiHitDecoratorAlg.h:56
ActsTrk::PixelClusterSiHitDecoratorAlg::m_PixelHelper
const PixelID * m_PixelHelper
Definition
PixelClusterSiHitDecoratorAlg.h:66
ActsTrk::PixelClusterSiHitDecoratorAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition
PixelClusterSiHitDecoratorAlg.cxx:57
ActsTrk::PixelClusterSiHitDecoratorAlg::m_sdo_depositsBarcode
SG::WriteDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_sdo_depositsBarcode
Definition
PixelClusterSiHitDecoratorAlg.h:47
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
InDetDD::SiDetectorElement
Class to hold geometrical description of a silicon detector element.
Definition
SiDetectorElement.h:109
PixelID
This is an Identifier helper class for the Pixel subdetector.
Definition
PixelID.h:69
SG::ReadCondHandleKey
Definition
ReadCondHandleKey.h:21
SG::ReadDecorHandleKey
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Definition
StoreGate/StoreGate/ReadDecorHandleKey.h:86
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
SG::WriteDecorHandleKey
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Definition
StoreGate/StoreGate/WriteDecorHandleKey.h:90
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition
MdtCalibInput.h:31
Generated on
for ATLAS Offline Software by
1.17.0