ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
DerivationFramework
DerivationFrameworkBPhys
src
Thin_vtxTrk.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// Thin_vtxTrk.h
8
9
#ifndef DERIVATIONFRAMEWORK_Thin_vtxTrk_H
10
#define DERIVATIONFRAMEWORK_Thin_vtxTrk_H
11
12
#include "
xAODTracking/TrackParticleContainer.h
"
13
#include "
xAODTracking/VertexContainer.h
"
14
#include "
AthenaBaseComps/AthAlgTool.h
"
15
#include "
DerivationFrameworkInterfaces/IThinningTool.h
"
16
#include "GaudiKernel/ToolHandle.h"
17
#include "
StoreGate/ThinningHandleKey.h
"
18
#include "
StoreGate/HandleKeyArray.h
"
19
#include "
StoreGate/ReadDecorHandleKeyArray.h
"
20
#include <string>
21
22
namespace
SG
{
23
template
<
class
T>
24
using
ThinningHandleKeyArray
=
HandleKeyArray<ReadHandle<T>
,
ThinningHandleKey<T>
, Gaudi::DataHandle::Reader >;
25
}
26
27
namespace
DerivationFramework
{
28
29
class
Thin_vtxTrk
:
public
extends<AthAlgTool, IThinningTool> {
30
public
:
31
Thin_vtxTrk
(
const
std::string& t,
const
std::string& n,
const
IInterface* p);
32
~Thin_vtxTrk
();
33
StatusCode
initialize
();
34
StatusCode
finalize
();
35
virtual
StatusCode
doThinning
(
const
EventContext& ctx)
const
;
36
37
private
:
38
StringProperty
m_streamName
{
this
,
"StreamName"
,
""
,
"Name of the stream being thinned"
};
39
mutable
std::atomic<unsigned int>
m_ntot
,
m_npass
;
40
double
m_acceptanceR
;
41
mutable
std::atomic<unsigned int>
m_nVtxTot
,
m_nVtxPass
;
42
43
SG::ThinningHandleKey<xAOD::TrackParticleContainer>
m_trackParticleContainerName
;
44
SG::ThinningHandleKeyArray<xAOD::VertexContainer>
m_vertexContainerName
;
45
std::vector<std::string>
m_passFlags
;
46
SG::ReadDecorHandleKeyArray<xAOD::VertexContainer>
m_passArray
{
this
,
"INTERNALARRAY"
, {}};
47
bool
m_thinTracks
;
48
bool
m_noFlags
;
//To take all entries, regardless of flags
49
};
50
}
51
52
#endif
AthAlgTool.h
TrackParticleContainer.h
IThinningTool.h
HandleKeyArray.h
ReadDecorHandleKeyArray.h
ThinningHandleKey.h
HandleKey object for adding thinning to an object.
VertexContainer.h
DerivationFramework::Thin_vtxTrk::m_streamName
StringProperty m_streamName
Definition
Thin_vtxTrk.h:38
DerivationFramework::Thin_vtxTrk::m_nVtxTot
std::atomic< unsigned int > m_nVtxTot
Definition
Thin_vtxTrk.h:41
DerivationFramework::Thin_vtxTrk::m_noFlags
bool m_noFlags
Definition
Thin_vtxTrk.h:48
DerivationFramework::Thin_vtxTrk::m_npass
std::atomic< unsigned int > m_npass
Definition
Thin_vtxTrk.h:39
DerivationFramework::Thin_vtxTrk::m_passArray
SG::ReadDecorHandleKeyArray< xAOD::VertexContainer > m_passArray
Definition
Thin_vtxTrk.h:46
DerivationFramework::Thin_vtxTrk::m_nVtxPass
std::atomic< unsigned int > m_nVtxPass
Definition
Thin_vtxTrk.h:41
DerivationFramework::Thin_vtxTrk::initialize
StatusCode initialize()
Definition
Thin_vtxTrk.cxx:40
DerivationFramework::Thin_vtxTrk::m_thinTracks
bool m_thinTracks
Definition
Thin_vtxTrk.h:47
DerivationFramework::Thin_vtxTrk::m_acceptanceR
double m_acceptanceR
Definition
Thin_vtxTrk.h:40
DerivationFramework::Thin_vtxTrk::~Thin_vtxTrk
~Thin_vtxTrk()
DerivationFramework::Thin_vtxTrk::m_passFlags
std::vector< std::string > m_passFlags
Definition
Thin_vtxTrk.h:45
DerivationFramework::Thin_vtxTrk::doThinning
virtual StatusCode doThinning(const EventContext &ctx) const
Definition
Thin_vtxTrk.cxx:88
DerivationFramework::Thin_vtxTrk::m_ntot
std::atomic< unsigned int > m_ntot
Definition
Thin_vtxTrk.h:39
DerivationFramework::Thin_vtxTrk::finalize
StatusCode finalize()
Definition
Thin_vtxTrk.cxx:78
DerivationFramework::Thin_vtxTrk::Thin_vtxTrk
Thin_vtxTrk(const std::string &t, const std::string &n, const IInterface *p)
Definition
Thin_vtxTrk.cxx:19
DerivationFramework::Thin_vtxTrk::m_trackParticleContainerName
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_trackParticleContainerName
Definition
Thin_vtxTrk.h:43
DerivationFramework::Thin_vtxTrk::m_vertexContainerName
SG::ThinningHandleKeyArray< xAOD::VertexContainer > m_vertexContainerName
Definition
Thin_vtxTrk.h:44
SG::HandleKeyArray
Definition
StoreGate/StoreGate/HandleKeyArray.h:45
SG::ThinningHandleKey
HandleKey object for adding thinning to an object.
Definition
ThinningHandleKey.h:39
DerivationFramework
THE reconstruction tool.
Definition
CascadeTools.h:16
SG
Forward declaration.
Definition
CaloCellPacker_400_500.h:32
SG::ReadDecorHandleKeyArray
DecorHandleKeyArray< ReadDecorHandle< T, S >, ReadDecorHandleKey< T >, Gaudi::DataHandle::Reader > ReadDecorHandleKeyArray
Definition
StoreGate/StoreGate/ReadDecorHandleKeyArray.h:35
SG::ThinningHandleKeyArray
HandleKeyArray< ThinningHandle< T >, ThinningHandleKey< T >, Gaudi::DataHandle::Reader > ThinningHandleKeyArray
Definition
ThinningHandleKeyArray.h:28
Generated on
for ATLAS Offline Software by
1.17.0