ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
DerivationFramework
DerivationFrameworkInDet
DerivationFrameworkInDet
PseudoTrackSelector.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// PseudoTrackSelector.h
8
#ifndef DERIVATIONFRAMEWORK_PseudoTrackSelector_H
9
#define DERIVATIONFRAMEWORK_PseudoTrackSelector_H
10
11
#include <string>
12
#include <map>
13
#include "GaudiKernel/ToolHandle.h"
14
#include "
AthenaBaseComps/AthAlgTool.h
"
15
#include "
DerivationFrameworkInterfaces/IAugmentationTool.h
"
16
#include "
InDetTrackSystematicsTools/IInDetTrackTruthOriginTool.h
"
17
18
#include "
xAODTracking/TrackParticleContainer.h
"
19
#include "
xAODTracking/TrackParticle.h
"
20
#include "
xAODTracking/TrackStateValidationContainer.h
"
21
#include "
xAODTruth/TruthParticle.h
"
22
#include "
xAODTruth/TruthParticleContainer.h
"
23
#include "
ExpressionEvaluation/ExpressionParserUser.h
"
24
25
#include "
StoreGate/WriteHandleKey.h
"
26
#include "
StoreGate/ReadHandleKeyArray.h
"
27
28
namespace
DerivationFramework
{
29
31
class
PseudoTrackSelector
:
public
extends<AthAlgTool, IAugmentationTool>
32
{
33
public
:
35
37
38
using
base_class::base_class;
39
40
virtual
StatusCode
initialize
()
override
final
;
41
virtual
StatusCode
addBranches
(
const
EventContext& ctx)
const
override
final
;
42
43
protected
:
45
47
SG::ReadHandleKey<xAOD::TrackParticleContainer>
m_in_recoTrackParticleLocation
{
this
,
"RecoTrackParticleLocation"
,
""
};
48
SG::ReadHandleKey<xAOD::TrackParticleContainer>
m_in_pseudoTrackParticleLocation
{
this
,
"PseudoTrackParticleLocation"
,
""
};
49
SG::WriteHandleKey<xAOD::TrackParticleContainer>
m_out_recoReplacedWithPseudo
{
this
,
"OutputRecoReplacedWithPseudo"
,
""
};
50
SG::WriteHandleKey<xAOD::TrackParticleContainer>
m_out_recoReplacedWithPseudoFromB
{
this
,
"OutputRecoReplacedWithPseudoFromB"
,
""
};
51
SG::WriteHandleKey<xAOD::TrackParticleContainer>
m_out_recoReplacedWithPseudoNotFromB
{
this
,
"OutputRecoReplacedWithPseudoNotFromB"
,
""
};
52
SG::WriteHandleKey<xAOD::TrackParticleContainer>
m_out_recoPlusPseudo
{
this
,
"OutputRecoPlusPseudo"
,
""
};
53
SG::WriteHandleKey<xAOD::TrackParticleContainer>
m_out_recoPlusPseudoFromB
{
this
,
"OutputRecoPlusPseudoFromB"
,
""
};
54
SG::WriteHandleKey<xAOD::TrackParticleContainer>
m_out_recoPlusPseudoNotFromB
{
this
,
"OutputRecoPlusPseudoNotFromB"
,
""
};
55
SG::WriteHandleKey<xAOD::TrackParticleContainer>
m_out_recoNoFakes
{
this
,
"OutputRecoNoFakes"
,
""
};
56
SG::WriteHandleKey<xAOD::TrackParticleContainer>
m_out_recoNoFakesFromB
{
this
,
"OutputRecoNoFakesFromB"
,
""
};
57
SG::WriteHandleKey<xAOD::TrackParticleContainer>
m_out_recoNoFakesNotFromB
{
this
,
"OutputRecoNoFakesNotFromB"
,
""
};
58
60
62
64
void
fillRecoReplacedWithPseudo
(
const
xAOD::TrackParticleContainer
* recoTrackParticleCol,
65
const
xAOD::TrackParticleContainer
* pseudoTrackParticleCol,
66
xAOD::TrackParticleContainer
* outputCol,
67
bool
onlyFromB =
false
,
68
bool
onlyNotFromB =
false
)
const
;
69
void
fillRecoPlusPseudo
(
const
xAOD::TrackParticleContainer
* recoTrackParticleCol,
70
const
xAOD::TrackParticleContainer
* pseudoTrackParticleCol,
71
xAOD::TrackParticleContainer
* outputCol,
72
bool
onlyFromB =
false
,
73
bool
onlyNotFromB =
false
)
const
;
74
void
fillRecoNoFakes
(
const
xAOD::TrackParticleContainer
* recoTrackParticleCol,
75
xAOD::TrackParticleContainer
* outputCol,
76
bool
onlyFromB =
false
,
77
bool
onlyNotFromB =
false
)
const
;
78
// Get truth particle associated to a given track particle
79
static
const
xAOD::TruthParticle
*
getTruth
(
const
xAOD::TrackParticle
* track ) ;
80
81
private
:
82
// convience types
83
typedef
ElementLink<xAOD::TruthParticleContainer>
TruthLink
;
84
// Track origin tool
85
ToolHandle< InDet::IInDetTrackTruthOriginTool >
m_trackOriginTool
{
this
,
"trackTruthOriginTool"
,
"InDet::InDetTrackTruthOriginTool"
,
"truth track origin tool"
};
86
};
87
}
88
#endif
// DERIVATIONFRAMEWORK_PseudoTrackSelector_H
AthAlgTool.h
TrackParticleContainer.h
TrackParticle.h
TruthParticleContainer.h
TruthParticle.h
ExpressionParserUser.h
IAugmentationTool.h
IInDetTrackTruthOriginTool.h
ReadHandleKeyArray.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
TrackStateValidationContainer.h
DerivationFramework::PseudoTrackSelector
Class-algorithm for pseudo track selection.
Definition
PseudoTrackSelector.h:32
DerivationFramework::PseudoTrackSelector::fillRecoReplacedWithPseudo
void fillRecoReplacedWithPseudo(const xAOD::TrackParticleContainer *recoTrackParticleCol, const xAOD::TrackParticleContainer *pseudoTrackParticleCol, xAOD::TrackParticleContainer *outputCol, bool onlyFromB=false, bool onlyNotFromB=false) const
Output track collection.
Definition
PseudoTrackSelector.cxx:159
DerivationFramework::PseudoTrackSelector::m_out_recoReplacedWithPseudoFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoReplacedWithPseudoFromB
Output track collection.
Definition
PseudoTrackSelector.h:50
DerivationFramework::PseudoTrackSelector::m_out_recoPlusPseudo
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoPlusPseudo
Output track collection.
Definition
PseudoTrackSelector.h:52
DerivationFramework::PseudoTrackSelector::addBranches
virtual StatusCode addBranches(const EventContext &ctx) const override final
Definition
PseudoTrackSelector.cxx:51
DerivationFramework::PseudoTrackSelector::m_out_recoReplacedWithPseudoNotFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoReplacedWithPseudoNotFromB
Output track collection.
Definition
PseudoTrackSelector.h:51
DerivationFramework::PseudoTrackSelector::m_in_pseudoTrackParticleLocation
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_in_pseudoTrackParticleLocation
Reco track collection.
Definition
PseudoTrackSelector.h:48
DerivationFramework::PseudoTrackSelector::m_out_recoPlusPseudoNotFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoPlusPseudoNotFromB
Output track collection.
Definition
PseudoTrackSelector.h:54
DerivationFramework::PseudoTrackSelector::m_out_recoPlusPseudoFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoPlusPseudoFromB
Output track collection.
Definition
PseudoTrackSelector.h:53
DerivationFramework::PseudoTrackSelector::TruthLink
ElementLink< xAOD::TruthParticleContainer > TruthLink
Definition
PseudoTrackSelector.h:83
DerivationFramework::PseudoTrackSelector::m_trackOriginTool
ToolHandle< InDet::IInDetTrackTruthOriginTool > m_trackOriginTool
Definition
PseudoTrackSelector.h:85
DerivationFramework::PseudoTrackSelector::m_out_recoNoFakesNotFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoNoFakesNotFromB
Output track collection.
Definition
PseudoTrackSelector.h:57
DerivationFramework::PseudoTrackSelector::initialize
virtual StatusCode initialize() override final
Definition
PseudoTrackSelector.cxx:33
DerivationFramework::PseudoTrackSelector::m_in_recoTrackParticleLocation
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_in_recoTrackParticleLocation
Protected data:
Definition
PseudoTrackSelector.h:47
DerivationFramework::PseudoTrackSelector::getTruth
static const xAOD::TruthParticle * getTruth(const xAOD::TrackParticle *track)
Definition
PseudoTrackSelector.cxx:357
DerivationFramework::PseudoTrackSelector::fillRecoNoFakes
void fillRecoNoFakes(const xAOD::TrackParticleContainer *recoTrackParticleCol, xAOD::TrackParticleContainer *outputCol, bool onlyFromB=false, bool onlyNotFromB=false) const
Definition
PseudoTrackSelector.cxx:313
DerivationFramework::PseudoTrackSelector::fillRecoPlusPseudo
void fillRecoPlusPseudo(const xAOD::TrackParticleContainer *recoTrackParticleCol, const xAOD::TrackParticleContainer *pseudoTrackParticleCol, xAOD::TrackParticleContainer *outputCol, bool onlyFromB=false, bool onlyNotFromB=false) const
Definition
PseudoTrackSelector.cxx:245
DerivationFramework::PseudoTrackSelector::m_out_recoNoFakes
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoNoFakes
Output track collection.
Definition
PseudoTrackSelector.h:55
DerivationFramework::PseudoTrackSelector::m_out_recoNoFakesFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoNoFakesFromB
Output track collection.
Definition
PseudoTrackSelector.h:56
DerivationFramework::PseudoTrackSelector::m_out_recoReplacedWithPseudo
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoReplacedWithPseudo
Pseudo track collection.
Definition
PseudoTrackSelector.h:49
ElementLink
ElementLink implementation for ROOT usage.
Definition
A/AthLinks/ElementLink.h:40
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
DerivationFramework
THE reconstruction tool.
Definition
CascadeTools.h:16
xAOD::TrackParticle
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticle.h:13
xAOD::TruthParticle
TruthParticle_v1 TruthParticle
Typedef to implementation.
Definition
Event/xAOD/xAODTruth/xAODTruth/TruthParticle.h:15
xAOD::TrackParticleContainer
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticleContainer.h:14
Generated on
for ATLAS Offline Software by
1.17.0