ATLAS Offline Software
ITrkAlignDBTool.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_ALIGNDBTOOL_IH
6 #define TRKALIGNINTERFACES_ALIGNDBTOOL_IH
7 
8 #include "GaudiKernel/IAlgTool.h"
9 #include "GaudiKernel/ToolHandle.h"
10 
11 #include <fstream>
12 
27 class TFile;
28 
29 namespace Trk {
30 
31  static const InterfaceID
32  IID_TRKALIGNINTERFACES_ITrkAlignDBTool("ITrkAlignDBTool",1,0);
33 
34  class ITrkAlignDBTool: virtual public IAlgTool {
35 
36  public:
37  static const InterfaceID& interfaceID();
38 
39  virtual StatusCode initialize() = 0;
40  virtual StatusCode finalize() = 0;
41 
43  virtual void writeAlignPar() {}
44 
46  virtual void setNtuple(TFile*) {}
47 
49  virtual void setLogStream(std::ostream * os) { m_logStream = os; }
50 
52  virtual StatusCode preSolve() { return StatusCode::SUCCESS; }
53 
54  protected:
55  std::ostream * m_logStream = nullptr;
56  };
57 
58  inline const InterfaceID& ITrkAlignDBTool::interfaceID()
59  { return IID_TRKALIGNINTERFACES_ITrkAlignDBTool; }
60 
61 } // end namespace
62 
63 #endif // TRKALIGNINTERFACES_ALIGNDBTOOL_IH
Trk::ITrkAlignDBTool::initialize
virtual StatusCode initialize()=0
Trk::ITrkAlignDBTool::setNtuple
virtual void setNtuple(TFile *)
sets ntuple if needed
Definition: ITrkAlignDBTool.h:46
Trk::ITrkAlignDBTool::finalize
virtual StatusCode finalize()=0
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trk::ITrkAlignDBTool::writeAlignPar
virtual void writeAlignPar()
writes alignment parameters to output
Definition: ITrkAlignDBTool.h:43
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::ITrkAlignDBTool::setLogStream
virtual void setLogStream(std::ostream *os)
sets the output stream for the logfile
Definition: ITrkAlignDBTool.h:49
Trk::ITrkAlignDBTool::m_logStream
std::ostream * m_logStream
logfile output stream
Definition: ITrkAlignDBTool.h:55
Trk::ITrkAlignDBTool::preSolve
virtual StatusCode preSolve()
sets up initial alignment constants before solving
Definition: ITrkAlignDBTool.h:52
Trk::ITrkAlignDBTool::interfaceID
static const InterfaceID & interfaceID()
Definition: ITrkAlignDBTool.h:58
Trk::ITrkAlignDBTool
Definition: ITrkAlignDBTool.h:34