ATLAS Offline Software
ITrackCollectionCnvTool.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_ITRACKCOLLECTIONCNVTOOL_H
9 #define XAODTRACKINGCNV_ITRACKCOLLECTIONCNVTOOL_H
10 
11 // Gaudi/Athena include(s):
12 #include "GaudiKernel/IAlgTool.h"
13 
14 // EDM include(s):
17 #include "xAODTracking/Vertex.h"
18 // Forward declaration(s):
19 //class TrackCollection; - no - typedef
21 
22 namespace Trk {
23  class ITrackParticleCreatorTool;
24 }
25 
26 namespace xAODMaker {
27 
29  static const InterfaceID
30  IID_ITrackCollectionCnvTool( "xAODMaker::ITrackCollectionCnvTool", 1, 0 );
31 
32 
33  class ITrackCollectionCnvTool : public virtual IAlgTool {
34 
35  public:
37  virtual StatusCode convert( const TrackCollection* aod,
38  xAOD::TrackParticleContainer* xaod, const xAOD::Vertex* vtx = nullptr ) const = 0;
39 
42  xAOD::TrackParticleContainer* xaod, const ObservedTrackMap* trk_map, const xAOD::Vertex* vtx = nullptr ) const = 0;
43 
44  virtual StatusCode setParticleCreatorTool(ToolHandle<Trk::ITrackParticleCreatorTool> *tool) = 0;
45 
47  static const InterfaceID& interfaceID() {
48  return IID_ITrackCollectionCnvTool;
49  }
50 
51  };//class definition
52 
53 } // xAODMaker namespace
54 
55 
56 #endif // XAODTRACKINGCNV_ITRACKCOLLECTIONCNVTOOL_H
ITrkObserverTool.h
xAODMaker::ITrackCollectionCnvTool
Definition: ITrackCollectionCnvTool.h:33
xAODMaker::ITrackCollectionCnvTool::setParticleCreatorTool
virtual StatusCode setParticleCreatorTool(ToolHandle< Trk::ITrackParticleCreatorTool > *tool)=0
xAODMaker
Definition: StoreGateSvc.h:72
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::ITrackCollectionCnvTool::convertAndAugment
virtual StatusCode convertAndAugment(const TrackCollection *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.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrackCollection.h
DataVector< Trk::Track >
Vertex.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
xAODMaker::ITrackCollectionCnvTool::convert
virtual StatusCode convert(const TrackCollection *aod, xAOD::TrackParticleContainer *xaod, const xAOD::Vertex *vtx=nullptr) const =0
Function that fills an existing xAOD::TrackParticleContainer.
AtlCoolConsole.tool
tool
Definition: AtlCoolConsole.py:453
xAODMaker::ITrackCollectionCnvTool::interfaceID
static const InterfaceID & interfaceID()
Gaudi interface definition.
Definition: ITrackCollectionCnvTool.h:47
xAOD::Vertex_v1
Class describing a Vertex.
Definition: Vertex_v1.h:42
TrackParticleContainer.h