ATLAS Offline Software
Loading...
Searching...
No Matches
TrackCollectionCnvTool.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_TRACKCOLLECTIONCNVTOOL_H
9#define XAODTRACKINGCNV_TRACKCOLLECTIONCNVTOOL_H
10
11// Gaudi/Athena include(s):
13#include "GaudiKernel/ToolHandle.h"
14
15// converting tool that will be invoked
17
18// Local include(s):
21
22// System include(s):
23#include <memory>
24
25namespace xAODMaker {
26
28 public virtual ITrackCollectionCnvTool {
29
30 public:
32 TrackCollectionCnvTool( const std::string& type, const std::string& name,
33 const IInterface* parent );
34
36 virtual StatusCode initialize() override;
37
39 virtual StatusCode convert( const TrackCollection* aod,
40 xAOD::TrackParticleContainer* xaod, const xAOD::Vertex* vtx = nullptr ) const override;
41
43 virtual StatusCode convertAndAugment( const TrackCollection* aod,
44 xAOD::TrackParticleContainer* xaod, const ObservedTrackMap* trk_map, const xAOD::Vertex* vtx = nullptr) const override;
45
47 virtual StatusCode setParticleCreatorTool(ToolHandle<Trk::ITrackParticleCreatorTool> *tool) override;
48
49 private:
50 ToolHandle<Trk::ITrackParticleCreatorTool> m_particleCreator;
51
53
54
55 }; // class TrackCollectionCnvTool definition
56
57} // xAODMaker namespace
58
59#endif // XAODTRACKINGCNV_TRACKCOLLECTIONCNVTOOL_H
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
DataVector< Trk::Track > TrackCollection
This typedef represents a collection of Trk::Track objects.
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
virtual StatusCode setParticleCreatorTool(ToolHandle< Trk::ITrackParticleCreatorTool > *tool) override
allow other algorithms to pass the tool in order to preserve initialisation
TrackCollectionCnvTool(const std::string &type, const std::string &name, const IInterface *parent)
Regular AlgTool constructor.
virtual StatusCode initialize() override
Function initialising the tool.
virtual StatusCode convert(const TrackCollection *aod, xAOD::TrackParticleContainer *xaod, const xAOD::Vertex *vtx=nullptr) const override
Function that fills an existing xAOD::TrackParticleContainer.
virtual StatusCode convertAndAugment(const TrackCollection *aod, xAOD::TrackParticleContainer *xaod, const ObservedTrackMap *trk_map, const xAOD::Vertex *vtx=nullptr) const override
Function that fills an existing xAOD::TrackParticleContainer and augments track particles.
xAOD::TrackParticle * createParticle(xAOD::TrackParticleContainer &xaod, const TrackCollection &container, const Trk::Track &tp, const xAOD::Vertex *vtx) const
ToolHandle< Trk::ITrackParticleCreatorTool > m_particleCreator
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Vertex_v1 Vertex
Define the latest version of the vertex class.
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".