ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
DerivationFramework
DerivationFrameworkInDet
src
TrackParticleThinningPHYS.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
// Author: James Catmore (James.Catmore@cern.ch)
6
// Removes all ID tracks which do not pass a user-defined cut
7
8
#include "
DerivationFrameworkInDet/TrackParticleThinningPHYS.h
"
9
#include "
StoreGate/ReadDecorHandle.h
"
10
11
// Athena initialize and finalize
12
StatusCode
DerivationFramework::TrackParticleThinningPHYS::initialize
()
13
{
14
ATH_CHECK
(
TrackParticleThinningBase::initialize
() );
15
ATH_CHECK
(
m_trackZ0PVKey
.initialize() );
16
ATH_CHECK
(
m_tightPrimaryKey
.initialize() );
17
return
StatusCode::SUCCESS;
18
}
19
20
21
std::vector<int>
DerivationFramework::TrackParticleThinningPHYS::updateMask
(
const
EventContext& ctx,
const
xAOD::TrackParticleContainer
* trackParticles)
const
22
{
23
SG::ReadDecorHandle<xAOD::TrackParticleContainer, bool>
tightPrimaryHandle(
m_tightPrimaryKey
, ctx);
// TODO CHECK TYPE
24
SG::ReadDecorHandle<xAOD::TrackParticleContainer, float>
z0AtPVHandle(
m_trackZ0PVKey
, ctx);
25
std::vector<int>
entries
;
26
entries
.reserve(trackParticles->
size
());
27
for
(
const
auto
* trackParticle : *trackParticles) {
28
// Inner detector group recommendations for indet tracks in analysis
29
// https://twiki.cern.ch/twiki/bin/viewauth/AtlasProtected/DaodRecommendations
30
entries
.push_back( (tightPrimaryHandle(*trackParticle) && (std::abs(z0AtPVHandle(*trackParticle)) * sin(trackParticle->theta()) < 3.0 * Gaudi::Units::mm) && (trackParticle->pt() > 10 * Gaudi::Units::GeV)) ? 1 : 0);
31
}
32
return
entries
;
33
}
ATH_CHECK
#define ATH_CHECK
Evaluate an expression and check for errors.
Definition
AthCheckMacros.h:40
ReadDecorHandle.h
Handle class for reading a decoration on an object.
TrackParticleThinningPHYS.h
DataVector::size
size_type size() const noexcept
Returns the number of elements in the collection.
DerivationFramework::TrackParticleThinningBase::initialize
virtual StatusCode initialize() override
Definition
TrackParticleThinningBase.cxx:18
DerivationFramework::TrackParticleThinningPHYS::m_trackZ0PVKey
SG::ReadDecorHandleKey< xAOD::TrackParticleContainer > m_trackZ0PVKey
Definition
TrackParticleThinningPHYS.h:23
DerivationFramework::TrackParticleThinningPHYS::updateMask
virtual std::vector< int > updateMask(const EventContext &ctx, const xAOD::TrackParticleContainer *trackParticles) const override final
Definition
TrackParticleThinningPHYS.cxx:21
DerivationFramework::TrackParticleThinningPHYS::m_tightPrimaryKey
SG::ReadDecorHandleKey< xAOD::TrackParticleContainer > m_tightPrimaryKey
Definition
TrackParticleThinningPHYS.h:26
DerivationFramework::TrackParticleThinningPHYS::initialize
virtual StatusCode initialize() override final
Definition
TrackParticleThinningPHYS.cxx:12
SG::ReadDecorHandle
Handle class for reading a decoration on an object.
Definition
StoreGate/StoreGate/ReadDecorHandle.h:94
entries
double entries
Definition
listroot.cxx:49
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