ATLAS Offline Software
ITRT_SeededTrackFinder.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // Header file for class ITRT_SeededTrackFinder
8 // (c) ATLAS Detector software
10 // Base class for track extension to Si ID
12 // Version 1.0 02/03/2006 T.Koffas
14 
15 #ifndef ITRT_SeededTrackFinder_H
16 #define ITRT_SeededTrackFinder_H
17 
18 #include <list>
19 #include "GaudiKernel/AlgTool.h"
20 #include "TrkTrack/Track.h"
22 #include "GaudiKernel/EventContext.h"
23 
24 class MsgStream;
25 
26 namespace InDet {
27 
28  class SiCombinatorialTrackFinderData_xk;
29 
30  static const InterfaceID IID_ITRT_SeededTrackFinder
31  ("InDet::ITRT_SeededTrackFinder",1,0);
32 
33  class ITRT_SeededTrackFinder : virtual public IAlgTool
34  {
36  // Public methods:
38 
39  public:
40  class IEventData {
41  public:
42  virtual ~IEventData() {}
45  };
46 
48  // Standard tool methods
50 
51  static const InterfaceID& interfaceID();
52  virtual StatusCode initialize ()=0;
53  virtual StatusCode finalize ()=0;
54 
56  // Main methods for track extension to Si
58 
59  virtual std::list<Trk::Track*> getTrack
60  (const EventContext& ctx,
62  const Trk::TrackSegment&) const = 0;
63  virtual std::unique_ptr<InDet::ITRT_SeededTrackFinder::IEventData>
64  newEvent(const EventContext& ctx, SiCombinatorialTrackFinderData_xk& combinatorialData) const =0;
65 
66  virtual std::unique_ptr<InDet::ITRT_SeededTrackFinder::IEventData>
67  newRegion(const EventContext& ctx, SiCombinatorialTrackFinderData_xk& combinatorialData,
68  const std::vector<IdentifierHash>&,const std::vector<IdentifierHash>&) const =0;
69  virtual void endEvent(InDet::ITRT_SeededTrackFinder::IEventData &event_data) const =0;
70 
72  // Print internal tool parameters and status
74 
75  virtual MsgStream& dump(MsgStream& out) const=0;
76  virtual std::ostream& dump(std::ostream& out) const=0;
77 
78  };
79 
81  // Overload of << operator for MsgStream and std::ostream
83 
84  MsgStream& operator << (MsgStream& ,const ITRT_SeededTrackFinder&);
85  std::ostream& operator << (std::ostream&,const ITRT_SeededTrackFinder&);
86 
88  // Inline methods
90 
91  inline const InterfaceID& ITRT_SeededTrackFinder::interfaceID()
92  {
93  return IID_ITRT_SeededTrackFinder;
94  }
95 
97  // Overload of << operator MsgStream
99 
100  inline MsgStream& operator <<
101  (MsgStream& sl,const ITRT_SeededTrackFinder& se)
102  {
103  return se.dump(sl);
104  }
106  // Overload of << operator std::ostream
108 
109  inline std::ostream& operator <<
110  (std::ostream& sl,const ITRT_SeededTrackFinder& se)
111  {
112  return se.dump(sl);
113  }
114 
115 } // end of name space
116 
117 
118 #endif // ITRT_SeededTrackFinder_H
119 
InDet::ITRT_SeededTrackFinder::IEventData
Definition: ITRT_SeededTrackFinder.h:40
InDet::operator<<
MsgStream & operator<<(MsgStream &, const GNNTrackReaderTool &)
InDet
Primary Vertex Finder.
Definition: VP1ErrorUtils.h:36
InDet::ITRT_SeededTrackFinder::dump
virtual std::ostream & dump(std::ostream &out) const =0
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:71
InDet::ITRT_SeededTrackFinder::finalize
virtual StatusCode finalize()=0
Trk::TrackSegment
Definition: TrackSegment.h:56
keylayer_zslicemap.se
se
Definition: keylayer_zslicemap.py:194
TrackSegment.h
Track.h
InDet::ITRT_SeededTrackFinder::initialize
virtual StatusCode initialize()=0
InDet::ITRT_SeededTrackFinder::IEventData::combinatorialData
virtual const InDet::SiCombinatorialTrackFinderData_xk & combinatorialData() const =0
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
InDet::ITRT_SeededTrackFinder::newRegion
virtual std::unique_ptr< InDet::ITRT_SeededTrackFinder::IEventData > newRegion(const EventContext &ctx, SiCombinatorialTrackFinderData_xk &combinatorialData, const std::vector< IdentifierHash > &, const std::vector< IdentifierHash > &) const =0
InDet::ITRT_SeededTrackFinder::interfaceID
static const InterfaceID & interfaceID()
Definition: ITRT_SeededTrackFinder.h:91
InDet::ITRT_SeededTrackFinder::newEvent
virtual std::unique_ptr< InDet::ITRT_SeededTrackFinder::IEventData > newEvent(const EventContext &ctx, SiCombinatorialTrackFinderData_xk &combinatorialData) const =0
InDet::ITRT_SeededTrackFinder::dump
virtual MsgStream & dump(MsgStream &out) const =0
InDet::ITRT_SeededTrackFinder::IEventData::~IEventData
virtual ~IEventData()
Definition: ITRT_SeededTrackFinder.h:42
InDet::SiCombinatorialTrackFinderData_xk
Definition: SiCombinatorialTrackFinderData_xk.h:34
InDet::ITRT_SeededTrackFinder
Definition: ITRT_SeededTrackFinder.h:34
InDet::ITRT_SeededTrackFinder::endEvent
virtual void endEvent(InDet::ITRT_SeededTrackFinder::IEventData &event_data) const =0
InDet::ITRT_SeededTrackFinder::getTrack
virtual std::list< Trk::Track * > getTrack(const EventContext &ctx, InDet::ITRT_SeededTrackFinder::IEventData &, const Trk::TrackSegment &) const =0
InDet::ITRT_SeededTrackFinder::IEventData::combinatorialData
virtual InDet::SiCombinatorialTrackFinderData_xk & combinatorialData()=0