ATLAS Offline Software
IRecTrackParticleContainerCnvTool.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // $Id$
8 #ifndef XAODTRACKINGCNV_IRECTRACKPARTICLECONTAINERCNVTOOL_H
9 #define XAODTRACKINGCNV_IRECTRACKPARTICLECONTAINERCNVTOOL_H
10 
11 // Gaudi/Athena include(s):
12 #include "GaudiKernel/IAlgTool.h"
13 
14 // EDM include(s):
16 #include "xAODTracking/Vertex.h"
17 //#include "TrkTrack/TrackCollection.h"
19 
20 // Forward declaration(s):
21 namespace Rec {
23 }
24 
25 namespace Trk {
26  class ITrackParticleCreatorTool;
27 }
28 
29 
30 namespace xAODMaker {
31 
33  static const InterfaceID
34  IID_IRecTrackParticleContainerCnvTool( "xAODMaker::IRecTrackParticleContainerCnvTool", 1, 0 );
35 
36 
37  class IRecTrackParticleContainerCnvTool : public virtual IAlgTool {
38 
39  public:
42  xAOD::TrackParticleContainer* xaod, const xAOD::Vertex* vtx = nullptr) const = 0;
43 
46  xAOD::TrackParticleContainer* xaod, const ObservedTrackMap* trk_map, const xAOD::Vertex* vtx = nullptr) const = 0;
47 
48  virtual StatusCode setParticleCreatorTool(ToolHandle<Trk::ITrackParticleCreatorTool> *tool) = 0;
49 
51  static const InterfaceID& interfaceID() {
52  return IID_IRecTrackParticleContainerCnvTool;
53  }
54 
55  };//class definition
56 
57 } // xAODMaker namespace
58 
59 
60 #endif // XAODTRACKINGCNV_IRECTRACKPARTICLECONTAINERCNVTOOL_H
ITrkObserverTool.h
AthCUDAExamples::TrackParticleContainer
vecmem::edm::container< TrackParticleInterface, vecmem::edm::type::vector< float >, vecmem::edm::type::vector< float >, vecmem::edm::type::vector< float > > TrackParticleContainer
SoA, GPU friendly TrackParticleContainer.
Definition: Control/AthenaExamples/AthExCUDA/src/TrackParticleContainer.h:46
xAODMaker
Definition: StoreGateSvc.h:72
xAODMaker::IRecTrackParticleContainerCnvTool
Definition: IRecTrackParticleContainerCnvTool.h:37
ObservedTrackMap
std::map< int, std::tuple< Trk::Track *, double, xAOD::RejectionStep, xAOD::RejectionReason, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, float, float, int, std::vector< xAOD::RejectionStep >, std::vector< xAOD::RejectionReason > > > ObservedTrackMap
Definition: ObservedTrackMap.h:50
xAODMaker::IRecTrackParticleContainerCnvTool::convertAndAugment
virtual StatusCode convertAndAugment(const Rec::TrackParticleContainer *aod, xAOD::TrackParticleContainer *xaod, const ObservedTrackMap *trk_map, const xAOD::Vertex *vtx=nullptr) const =0
Function that fills an existing xAOD::TrackParticleContainer and augments track particles.
Rec
Name: MuonSpContainer.h Package : offline/Reconstruction/MuonIdentification/muonEvent.
Definition: FakeTrackBuilder.h:10
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
xAODMaker::IRecTrackParticleContainerCnvTool::interfaceID
static const InterfaceID & interfaceID()
Gaudi interface definition.
Definition: IRecTrackParticleContainerCnvTool.h:51
xAODMaker::IRecTrackParticleContainerCnvTool::convert
virtual StatusCode convert(const Rec::TrackParticleContainer *aod, xAOD::TrackParticleContainer *xaod, const xAOD::Vertex *vtx=nullptr) const =0
Function that fills an existing xAOD::TrackParticleContainer.
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
Vertex.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
AtlCoolConsole.tool
tool
Definition: AtlCoolConsole.py:453
Rec::TrackParticleContainer
Definition: Reconstruction/Particle/Particle/TrackParticleContainer.h:33
xAOD::Vertex_v1
Class describing a Vertex.
Definition: Vertex_v1.h:42
xAODMaker::IRecTrackParticleContainerCnvTool::setParticleCreatorTool
virtual StatusCode setParticleCreatorTool(ToolHandle< Trk::ITrackParticleCreatorTool > *tool)=0
TrackParticleContainer.h