ATLAS Offline Software
Loading...
Searching...
No Matches
IBPhysTrackVertexMapTool.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5*/
6
7// $Id: $
8#ifndef BPHYSTOOLS_IBPHYSTRACKVERTEXMAPTOOL_H
9#define BPHYSTOOLS_IBPHYSTRACKVERTEXMAPTOOL_H
10
11// Framework includes
12#include "AsgTools/IAsgTool.h"
13
14// System include(s):
15#include <string>
16#include <memory>
17#include <vector>
18
19// EDM includes
22
23namespace xAOD {
33 class IBPhysTrackVertexMapTool : virtual public asg::IAsgTool {
34
35 public:
38
39
40 virtual StatusCode logEvent() = 0;
41
43 virtual StatusCode finalize() = 0;
44
46 virtual bool doLog() const = 0;
47
48 public:
52 virtual StatusCode cacheEvent() = 0;
53
55 virtual std::vector<const xAOD::Vertex*>
57
60 virtual std::vector<const xAOD::Vertex*>
62
64 virtual std::vector<const xAOD::Vertex*>
66
67 // track-vertex association related
69 unsigned int indent=0,
70 bool withPV=false,
71 bool withRefPV=false,
72 bool withSV=false) = 0;
73
74 virtual std::string pvToString(const xAOD::Vertex* vtx,
75 unsigned int indent=0,
76 bool withTracks=false) = 0;
77
78 virtual std::string refPVToString(const xAOD::Vertex* vtx,
79 unsigned int indent=0,
80 bool withTracks=false) = 0;
81 virtual std::string svToString(const xAOD::Vertex* vtx,
82 unsigned int indent=0,
83 bool withTracks=false,
84 bool withMasses=false) = 0;
86 tpc,
87 unsigned int indent=0,
88 bool withPV=false,
89 bool withRefPV=false,
90 bool withSV=false) = 0;
91
92 virtual std::string pvsToString(const xAOD::VertexContainer* pvc,
93 unsigned int indent=0,
94 bool withTracks=false) = 0;
96 unsigned int indent=0,
97 bool withTracks=false) =0;
98 virtual std::string svsToString(const xAOD::VertexContainer* svc,
99 unsigned int indent=0,
100 bool withTracks=false,
101 bool withMasses=false) = 0;
102 virtual std::string summaryToString(std::string prefix) = 0;
104
105 }; // class IBPhysTrackVertexMapTool
106
107} // namespace xAOD
108
109#endif // BPHYSTOOLS_IBPHYSTRACKVERTEXMAPTOOL_H
#define ASG_TOOL_INTERFACE(CLASSNAME)
Base class for the dual-use tool interface classes.
Definition IAsgTool.h:41
Interface for dual-use tool createing a track-to-vertex map from the vertex-to-track information.
virtual std::string pvsToString(const xAOD::VertexContainer *pvc, unsigned int indent=0, bool withTracks=false)=0
virtual std::string pvToString(const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false)=0
virtual std::string summaryToString(std::string prefix)=0
virtual bool doLog() const =0
Function indicating whether log counter allows logging of current event.
virtual std::string svsToString(const xAOD::VertexContainer *svc, unsigned int indent=0, bool withTracks=false, bool withMasses=false)=0
virtual std::string idTracksToString(const xAOD::TrackParticleContainer *tpc, unsigned int indent=0, bool withPV=false, bool withRefPV=false, bool withSV=false)=0
virtual std::string refPVToString(const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false)=0
virtual std::vector< const xAOD::Vertex * > refPVsForIDTrack(const xAOD::TrackParticle *track) const =0
obtain refitted primary vertices for a given ID track (may return empty vector)
virtual StatusCode cacheEvent()=0
virtual StatusCode logEvent()=0
Declare the correct interface for Athena.
virtual StatusCode finalize()=0
Function finalizing the tool.
virtual std::string svToString(const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false, bool withMasses=false)=0
virtual std::string refPVsToString(const xAOD::VertexContainer *rpvc, unsigned int indent=0, bool withTracks=false)=0
virtual std::vector< const xAOD::Vertex * > svsForIDTrack(const xAOD::TrackParticle *track) const =0
obtain secondary vertices for a given ID track (may return empty vector)
virtual std::vector< const xAOD::Vertex * > pvsForIDTrack(const xAOD::TrackParticle *track) const =0
obtain primary vertices for a given ID track (may return empty vector)
virtual std::string idTrackToString(const xAOD::TrackParticle *track, unsigned int indent=0, bool withPV=false, bool withRefPV=false, bool withSV=false)=0
STL namespace.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
TrackParticle_v1 TrackParticle
Reference the current persistent version:
VertexContainer_v1 VertexContainer
Definition of the current "Vertex container version".
Vertex_v1 Vertex
Define the latest version of the vertex class.
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".