ATLAS Offline Software
ITrackCollectionProvider.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRKALIGNINTERFACES_TRACKCOLLECTIONPROVIDER_IH
6 #define TRKALIGNINTERFACES_TRACKCOLLECTIONPROVIDER_IH
7 
8 #include "GaudiKernel/IAlgTool.h"
9 
11 
12 #include <fstream>
13 
25 class TFile;
26 
27 
28 namespace Trk {
29 
30  static const InterfaceID
31  IID_TRK_ITrackCollectionProvider("ITrackCollectionProvider",1,0);
32 
33  class ITrackCollectionProvider: virtual public IAlgTool {
34  public:
35  static const InterfaceID& interfaceID();
36 
37  virtual StatusCode trackCollection(const TrackCollection*& tracks) = 0;
38 
40  virtual void setLogStream(std::ostream * os) { m_logStream = os; }
41 
43  virtual void setNtuple(TFile*) {}
44 
46  virtual StatusCode fillNtuple() { return StatusCode::SUCCESS; }
47 
48 
50  virtual void printSummary() {}
51 
52  protected:
53  std::ostream * m_logStream = nullptr;
54 
55  }; // end of class definition
56 
57  inline const InterfaceID& ITrackCollectionProvider::interfaceID() {
58  return IID_TRK_ITrackCollectionProvider;
59  }
60 
61 } // end of namespace
62 
63 
64 #endif // TRKALIGNINTERFACES_TRACKCOLLECTIONPROVIDER_IH
Trk::ITrackCollectionProvider
Definition: ITrackCollectionProvider.h:33
Trk::ITrackCollectionProvider::trackCollection
virtual StatusCode trackCollection(const TrackCollection *&tracks)=0
Trk::ITrackCollectionProvider::interfaceID
static const InterfaceID & interfaceID()
Definition: ITrackCollectionProvider.h:57
Trk::ITrackCollectionProvider::printSummary
virtual void printSummary()
Print statistical summary to logfile.
Definition: ITrackCollectionProvider.h:50
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trk::ITrackCollectionProvider::setNtuple
virtual void setNtuple(TFile *)
sets ntuple
Definition: ITrackCollectionProvider.h:43
TrackCollection.h
DataVector< Trk::Track >
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::ITrackCollectionProvider::fillNtuple
virtual StatusCode fillNtuple()
writes tree to ntuple
Definition: ITrackCollectionProvider.h:46
Trk::ITrackCollectionProvider::m_logStream
std::ostream * m_logStream
logfile output stream
Definition: ITrackCollectionProvider.h:53
Trk::ITrackCollectionProvider::setLogStream
virtual void setLogStream(std::ostream *os)
sets the output stream for the logfile
Definition: ITrackCollectionProvider.h:40