ATLAS Offline Software
TrackParticleMergerAlg.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 //
3 // Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
4 //
5 #ifndef TRACKINGANALYSISALGORITHMS_TRACKPARTICLEMERGERALG_H
6 #define TRACKINGANALYSISALGORITHMS_TRACKPARTICLEMERGERALG_H
7 
11 
21 
22 #include <string>
23 
24 namespace CP {
25 
37 
38  public:
40  TrackParticleMergerAlg( const std::string& name, ISvcLocator* svcLoc );
41 
44 
46  virtual StatusCode initialize() override final;
47 
49  virtual StatusCode execute(const EventContext& ctx) const override final;
50 
52 
53  private:
56  // Declare the algorithm's properties:
57 
60  this, "InputTrackParticleLocations", {"InDetTrackParticles", "InDetLargeD0TrackParticles"},
61  "Input track collections to be merged"
62  };
63 
66  this, "OutputTrackParticleLocationCopy", "InDetWithLRTTrackParticles", "Output collection name"
67  };
69  this, "OutputTrackParticleLocation", "InDetWithLRTTrackParticles", "Output view collection name"
70  };
71 
73  Gaudi::Property<bool> m_createViewCollection{this, "CreateViewCollection", true};
74 
77  this, "RequiredDecorations", {}, "Decorations that the algorithm needs to wait for"};
78 
79 
81 
82  }; // class TrackParticleMergerAlg
83 
84 } // namespace CP
85 
86 #endif // TRACKINGANALYSISALGORITHMS_TRACKPARTICLEMERGERALG_H
WriteHandle.h
Handle class for recording to StoreGate.
PropertyWrapper.h
CP::TrackParticleMergerAlg::m_requiredDecorations
SG::ReadDecorHandleKeyArray< xAOD::TrackParticleContainer > m_requiredDecorations
Extra guard for deep-copy mode.
Definition: TrackParticleMergerAlg.h:76
CurrentContext.h
ConstDataVector.h
DataVector adapter that acts like it holds const pointers.
CP::TrackParticleMergerAlg::m_outputTrackParticleLocationView
SG::WriteHandleKey< ConstDataVector< xAOD::TrackParticleContainer > > m_outputTrackParticleLocationView
Definition: TrackParticleMergerAlg.h:68
CP::TrackParticleMergerAlg::m_createViewCollection
Gaudi::Property< bool > m_createViewCollection
Option to create a view collection and not deep-copy tracks.
Definition: TrackParticleMergerAlg.h:73
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
ReadDecorHandleKeyArray.h
CP::TrackParticleMergerAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override final
Function executing the algorithm.
Definition: TrackParticleMergerAlg.cxx:28
SG::WriteHandleKey< xAOD::TrackParticleContainer >
TrackParticleAuxContainer.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
CP::TrackParticleMergerAlg::initialize
virtual StatusCode initialize() override final
Function initialising the algorithm.
Definition: TrackParticleMergerAlg.cxx:15
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
CP::TrackParticleMergerAlg::TrackParticleMergerAlg
TrackParticleMergerAlg(const std::string &name, ISvcLocator *svcLoc)
Algorithm constructor.
Definition: TrackParticleMergerAlg.cxx:10
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
ReadHandle.h
Handle class for reading from StoreGate.
EL::AnaReentrantAlgorithm
the base class for EventLoop reentrant algorithms
Definition: AnaReentrantAlgorithm.h:51
CP::TrackParticleMergerAlg
Algorithm to merge multiple track collections into one.
Definition: TrackParticleMergerAlg.h:36
AnaReentrantAlgorithm.h
CP::TrackParticleMergerAlg::m_outputTrackParticleLocationCopy
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_outputTrackParticleLocationCopy
Output collection name.
Definition: TrackParticleMergerAlg.h:65
ReadHandleKeyArray.h
CP::TrackParticleMergerAlg::m_inputTrackParticleLocations
SG::ReadHandleKeyArray< xAOD::TrackParticleContainer > m_inputTrackParticleLocations
Input track collections to be merged.
Definition: TrackParticleMergerAlg.h:59
TrackParticleContainer.h