ATLAS Offline Software
IAlignTrackCreator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRKALIGNINTERFACES_ALIGN_TRACK_CREATOR_IH
6 #define TRKALIGNINTERFACES_ALIGN_TRACK_CREATOR_IH
7 
8 #include "GaudiKernel/IAlgTool.h"
9 
20 #include <fstream>
21 
22 namespace Trk {
23 
24  class AlignTrack;
25  class Track;
26 
27  static const InterfaceID
28  IID_TRK_IAlignTrackCreator("IAlignTrackCreator",1,0);
29 
30  class IAlignTrackCreator: virtual public IAlgTool {
31 
32  public:
34  virtual ~IAlignTrackCreator() {}
35 
36  static const InterfaceID& interfaceID();
37 
39  virtual bool processAlignTrack(AlignTrack* alignTrack) = 0;
40 
42  void setDoPixel(bool doPixel) { m_doPixel = doPixel; }
43  void setDoSCT(bool doSCT) { m_doSCT = doSCT; }
44  void setDoTRT(bool doTRT) { m_doTRT = doTRT; }
45  void setDoMDT(bool doMDT) { m_doMDT = doMDT; }
46 
48  virtual void setLogStream(std::ostream * os) { m_logStream = os; }
49 
50  protected:
51 
52  bool m_doPixel;
53  bool m_doSCT;
54  bool m_doTRT;
55  bool m_doMDT;
56 
57  std::ostream * m_logStream;
58 
59  }; // end class definition
60 
61  inline IAlignTrackCreator::IAlignTrackCreator() : m_doPixel(1), m_doSCT(1), m_doTRT(1), m_doMDT(1), m_logStream(0){}
62  inline const InterfaceID& IAlignTrackCreator::interfaceID()
63  { return IID_TRK_IAlignTrackCreator; }
64 
65 } // end namespace
66 
67 #endif // TRKALIGNINTERFACES_ALIGN_TRACK_CREATOR_IH
Trk::IAlignTrackCreator::interfaceID
static const InterfaceID & interfaceID()
Definition: IAlignTrackCreator.h:62
Trk::IAlignTrackCreator::m_doPixel
bool m_doPixel
Definition: IAlignTrackCreator.h:52
Trk::IAlignTrackCreator::setDoPixel
void setDoPixel(bool doPixel)
Sets flags to indicate whether hits from particular detector elements are to be stored on the AlignTr...
Definition: IAlignTrackCreator.h:42
Trk::IAlignTrackCreator::m_doTRT
bool m_doTRT
Definition: IAlignTrackCreator.h:54
Trk::IAlignTrackCreator::IAlignTrackCreator
IAlignTrackCreator()
Definition: IAlignTrackCreator.h:61
Trk::IAlignTrackCreator::m_logStream
std::ostream * m_logStream
logfile output stream
Definition: IAlignTrackCreator.h:57
Trk::IAlignTrackCreator::m_doMDT
bool m_doMDT
Definition: IAlignTrackCreator.h:55
Trk::IAlignTrackCreator::setDoSCT
void setDoSCT(bool doSCT)
Definition: IAlignTrackCreator.h:43
Trk::IAlignTrackCreator::m_doSCT
bool m_doSCT
Definition: IAlignTrackCreator.h:53
Trk::IAlignTrackCreator::processAlignTrack
virtual bool processAlignTrack(AlignTrack *alignTrack)=0
creates AlignTrack from Trk::Track
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::IAlignTrackCreator::setDoTRT
void setDoTRT(bool doTRT)
Definition: IAlignTrackCreator.h:44
Trk::IAlignTrackCreator::~IAlignTrackCreator
virtual ~IAlignTrackCreator()
Definition: IAlignTrackCreator.h:34
Trk::AlignTrack
Definition: AlignTrack.h:41
Trk::IAlignTrackCreator
Definition: IAlignTrackCreator.h:30
Trk::IAlignTrackCreator::setDoMDT
void setDoMDT(bool doMDT)
Definition: IAlignTrackCreator.h:45
Track
Definition: TriggerChamberClusterOnTrackCreator.h:21
Trk::IAlignTrackCreator::setLogStream
virtual void setLogStream(std::ostream *os)
sets the output stream for the logfile
Definition: IAlignTrackCreator.h:48
AlignTrack
AlignTrack is a generalization of a Trk::Track, used as the basic object to contain track information...