ATLAS Offline Software
VSITrackParticleThinning.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // VSITrackParticleThinning.h, (c) ATLAS Detector software
8 
9 #ifndef DERIVATIONFRAMEWORK_VSITRACKPARTICLETHINNING_H
10 #define DERIVATIONFRAMEWORK_VSITRACKPARTICLETHINNING_H
11 
12 #include <string>
13 #include <atomic>
14 
17 #include "GaudiKernel/ToolHandle.h"
19 #include "xAODJet/JetContainer.h"
23 
25 
26 namespace DerivationFramework {
27 
29  class VSITrackParticleThinning : public extends<ExpressionParserUser<AthAlgTool, kNumDvTPThinningParser>, IThinningTool> {
30  public:
31  VSITrackParticleThinning(const std::string& t, const std::string& n, const IInterface* p);
32  virtual ~VSITrackParticleThinning();
33  virtual StatusCode initialize() override;
34  virtual StatusCode finalize() override;
35  virtual StatusCode doThinning() const override;
36 
37  private:
38  mutable std::atomic<unsigned int> m_ntot {};
39  mutable std::atomic<unsigned int> m_npass {};
40 
41  StringProperty m_streamName
42  { this, "StreamName", "", "Name of the stream being thinned" };
44  { this, "InDetTrackParticlesKey", "InDetTrackParticles", "" };
45  StringProperty m_selectionString
46  { this, "SelectionString", "", "" };
47  StringProperty m_trackSelectionString
48  { this, "TrackSelectionString", "", "" };
49 
50  StringArrayProperty m_augVerStrings
51  { this, "AugVerStrings", {""}, "List of augVerStrings to consider" };
52 
53  };
54 }
55 
56 #endif // DERIVATIONFRAMEWORK_VSITRACKPARTICLETHINNING_H
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
DerivationFramework::kNumDvTPThinningParser
@ kNumDvTPThinningParser
Definition: VSITrackParticleThinning.h:28
SG::ThinningHandleKey
HandleKey object for adding thinning to an object.
Definition: ThinningHandleKey.h:38
ExpressionParserUser.h
IThinningTool.h
DerivationFramework::VSITrackParticleThinning::finalize
virtual StatusCode finalize() override
Definition: VSITrackParticleThinning.cxx:50
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
DerivationFramework::VSITrackParticleThinning::VSITrackParticleThinning
VSITrackParticleThinning(const std::string &t, const std::string &n, const IInterface *p)
Definition: VSITrackParticleThinning.cxx:22
DerivationFramework::kdvTrackThinning
@ kdvTrackThinning
Definition: VSITrackParticleThinning.h:28
DerivationFramework::VSITrackParticleThinning::m_selectionString
StringProperty m_selectionString
Definition: VSITrackParticleThinning.h:46
DerivationFramework::VSITrackParticleThinning
Definition: VSITrackParticleThinning.h:29
DerivationFramework::VSITrackParticleThinning::initialize
virtual StatusCode initialize() override
Definition: VSITrackParticleThinning.cxx:34
DerivationFramework::VSITrackParticleThinning::m_augVerStrings
StringArrayProperty m_augVerStrings
Definition: VSITrackParticleThinning.h:51
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
DerivationFramework::VSITrackParticleThinning::m_streamName
StringProperty m_streamName
Definition: VSITrackParticleThinning.h:42
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DerivationFramework::VSITrackParticleThinning::m_npass
std::atomic< unsigned int > m_npass
Definition: VSITrackParticleThinning.h:39
DerivationFramework::kDvSelection
@ kDvSelection
Definition: VSITrackParticleThinning.h:28
DerivationFramework::VSITrackParticleThinning::m_ntot
std::atomic< unsigned int > m_ntot
Definition: VSITrackParticleThinning.h:38
DerivationFramework::VSITrackParticleThinning::doThinning
virtual StatusCode doThinning() const override
Definition: VSITrackParticleThinning.cxx:58
DerivationFramework::VSITrackParticleThinning::~VSITrackParticleThinning
virtual ~VSITrackParticleThinning()
Definition: VSITrackParticleThinning.cxx:30
DerivationFramework::VSITrackParticleThinning::m_inDetSGKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_inDetSGKey
Definition: VSITrackParticleThinning.h:44
VertexContainer.h
JetContainer.h
DerivationFramework::EDvTrPThinningParser
EDvTrPThinningParser
Definition: VSITrackParticleThinning.h:28
DerivationFramework::VSITrackParticleThinning::m_trackSelectionString
StringProperty m_trackSelectionString
Definition: VSITrackParticleThinning.h:48
ThinningHandleKey.h
HandleKey object for adding thinning to an object.
TrackParticleContainer.h