ATLAS Offline Software
BPhysPVThinningTool.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 // BPhysPVThinningTool.h
8 
9 #ifndef DERIVATIONFRAMEWORK_BPhysPVThinningTool_H
10 #define DERIVATIONFRAMEWORK_BPhysPVThinningTool_H 1
11 
13 // Gaudi & Athena basics
17 // DerivationFramework includes
19 
20 namespace DerivationFramework {
21 
22 
23  class BPhysPVThinningTool : public AthAlgTool, public IThinningTool {
24 
25  public:
27  BPhysPVThinningTool( const std::string& t, const std::string& n, const IInterface* p );
28 
31 
32  // Athena algtool's Hooks
33  virtual StatusCode initialize() override;
34  virtual StatusCode finalize() override;
35 
37  virtual StatusCode doThinning() const override;
38 
39  private:
40  StringProperty m_streamName{ this, "StreamName", "", "Name of the stream being thinned" };
44  mutable std::atomic<unsigned int> m_ntot;
45  mutable std::atomic<unsigned int> m_npass;
46  mutable std::atomic<unsigned int> m_tracks_kept;
48  };
49 
50 }
51 
52 
53 #endif
ReadHandleKeyArray.h
DerivationFramework::BPhysPVThinningTool::m_keepTracks
bool m_keepTracks
Definition: BPhysPVThinningTool.h:47
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
DerivationFramework::BPhysPVThinningTool::~BPhysPVThinningTool
~BPhysPVThinningTool()
Destructor.
Definition: BPhysPVThinningTool.cxx:43
SG::ThinningHandleKey
HandleKey object for adding thinning to an object.
Definition: ThinningHandleKey.h:38
DerivationFramework::BPhysPVThinningTool::m_streamName
StringProperty m_streamName
Definition: BPhysPVThinningTool.h:40
DerivationFramework::IThinningTool
Definition: IThinningTool.h:24
DerivationFramework::BPhysPVThinningTool::finalize
virtual StatusCode finalize() override
Definition: BPhysPVThinningTool.cxx:56
IThinningTool.h
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
DerivationFramework::BPhysPVThinningTool::m_npass
std::atomic< unsigned int > m_npass
Definition: BPhysPVThinningTool.h:45
DerivationFramework::BPhysPVThinningTool::m_PVContainerName
SG::ThinningHandleKey< xAOD::VertexContainer > m_PVContainerName
Definition: BPhysPVThinningTool.h:43
DerivationFramework::BPhysPVThinningTool
Definition: BPhysPVThinningTool.h:23
DerivationFramework::BPhysPVThinningTool::m_tracks_kept
std::atomic< unsigned int > m_tracks_kept
Definition: BPhysPVThinningTool.h:46
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
DerivationFramework::BPhysPVThinningTool::doThinning
virtual StatusCode doThinning() const override
Check that the current event passes this filter.
Definition: BPhysPVThinningTool.cxx:65
AthAlgTool.h
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
VertexContainer.h
DerivationFramework::BPhysPVThinningTool::m_ntot
std::atomic< unsigned int > m_ntot
Definition: BPhysPVThinningTool.h:44
ThinningHandleKey.h
HandleKey object for adding thinning to an object.
DerivationFramework::BPhysPVThinningTool::m_BPhyCandList
SG::ReadHandleKeyArray< xAOD::VertexContainer > m_BPhyCandList
Definition: BPhysPVThinningTool.h:41
DerivationFramework::BPhysPVThinningTool::initialize
virtual StatusCode initialize() override
Definition: BPhysPVThinningTool.cxx:47
DerivationFramework::BPhysPVThinningTool::m_TrackContainerName
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_TrackContainerName
Definition: BPhysPVThinningTool.h:42
AthAlgTool
Definition: AthAlgTool.h:26
DerivationFramework::BPhysPVThinningTool::BPhysPVThinningTool
BPhysPVThinningTool(const std::string &t, const std::string &n, const IInterface *p)
Constructor with parameters.
Definition: BPhysPVThinningTool.cxx:26