ATLAS Offline Software
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 
23 namespace 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
68  virtual std::string idTrackToString(const xAOD::TrackParticle* track,
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;
95  virtual std::string refPVsToString(const xAOD::VertexContainer* rpvc,
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
xAOD::IBPhysTrackVertexMapTool
Interface for dual-use tool createing a track-to-vertex map from the vertex-to-track information.
Definition: IBPhysTrackVertexMapTool.h:33
xAOD::IBPhysTrackVertexMapTool::idTracksToString
virtual std::string idTracksToString(const xAOD::TrackParticleContainer *tpc, unsigned int indent=0, bool withPV=false, bool withRefPV=false, bool withSV=false)=0
xAOD::IBPhysTrackVertexMapTool::refPVToString
virtual std::string refPVToString(const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false)=0
xAOD::IBPhysTrackVertexMapTool::idTrackToString
virtual std::string idTrackToString(const xAOD::TrackParticle *track, unsigned int indent=0, bool withPV=false, bool withRefPV=false, bool withSV=false)=0
xAOD::IBPhysTrackVertexMapTool::svToString
virtual std::string svToString(const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false, bool withMasses=false)=0
xAOD::IBPhysTrackVertexMapTool::pvsToString
virtual std::string pvsToString(const xAOD::VertexContainer *pvc, unsigned int indent=0, bool withTracks=false)=0
asg::IAsgTool
Base class for the dual-use tool interface classes.
Definition: IAsgTool.h:41
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
xAOD::IBPhysTrackVertexMapTool::refPVsToString
virtual std::string refPVsToString(const xAOD::VertexContainer *rpvc, unsigned int indent=0, bool withTracks=false)=0
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
xAOD::IBPhysTrackVertexMapTool::summaryToString
virtual std::string summaryToString(std::string prefix)=0
xAOD::IBPhysTrackVertexMapTool::cacheEvent
virtual StatusCode cacheEvent()=0
geometry_dat_to_json.indent
indent
Definition: geometry_dat_to_json.py:36
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
vector
Definition: MultiHisto.h:13
xAOD::IBPhysTrackVertexMapTool::pvsForIDTrack
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)
checkCorrelInHIST.prefix
dictionary prefix
Definition: checkCorrelInHIST.py:391
ASG_TOOL_INTERFACE
#define ASG_TOOL_INTERFACE(CLASSNAME)
Definition: AsgToolMacros.h:40
Handler::svc
AthROOTErrorHandlerSvc * svc
Definition: AthROOTErrorHandlerSvc.cxx:10
IAsgTool.h
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
xAOD::IBPhysTrackVertexMapTool::svsToString
virtual std::string svsToString(const xAOD::VertexContainer *svc, unsigned int indent=0, bool withTracks=false, bool withMasses=false)=0
xAOD::IBPhysTrackVertexMapTool::svsForIDTrack
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)
xAOD::IBPhysTrackVertexMapTool::doLog
virtual bool doLog() const =0
Function indicating whether log counter allows logging of current event.
xAOD::IBPhysTrackVertexMapTool::refPVsForIDTrack
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)
VertexContainer.h
xAOD::Vertex_v1
Class describing a Vertex.
Definition: Vertex_v1.h:42
xAOD::IBPhysTrackVertexMapTool::pvToString
virtual std::string pvToString(const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false)=0
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
xAOD::IBPhysTrackVertexMapTool::logEvent
virtual StatusCode logEvent()=0
Declare the correct interface for Athena.
TrackParticleContainer.h
xAOD::IBPhysTrackVertexMapTool::finalize
virtual StatusCode finalize()=0
Function finalizing the tool.