ATLAS Offline Software
TrackingVolumeDisplayer.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // TrackingVolumeDisplayer.h, (c) ATLAS Detector software
8 
9 #ifndef TRKDETDESCRTOOLS_TRACKINGVOLUMEDISPLAYER_H
10 #define TRKDETDESCRTOOLS_TRACKINGVOLUMEDISPLAYER_H
11 
12 // Trk
14 // STL
15 #include <string>
16 #include <fstream>
17 
18 #include "CxxUtils/checker_macros.h"
19 namespace Trk {
20 
21  class TrackingVolume;
22  class Layer;
23  class Surface;
24  class MaterialProperties;
25 
35  virtual public RecursiveGeometryProcessor {
36 
37  public:
38 
40  TrackingVolumeDisplayer(const std::string&,const std::string&,const IInterface*);
43 
46 
49 
50  private:
51 
53  StatusCode processNode(const TrackingVolume& tvol, size_t level=0) const;
54 
56  StatusCode processNode(const Layer& lay, size_t level=0) const;
57 
59  StatusCode processNode(const Surface&, size_t level=0) const;
60 
61  static void openFile(std::ofstream& output, const std::string& filename) ;
62  static void closeFile(std::ofstream& output) ;
63 
65  static int colorCodeFromMaterial(const Trk::MaterialProperties* prop, std::ofstream& output) ;
66 
67  mutable int m_volumeCounter;
68 
69  mutable std::ofstream m_fileVolumeOutput;
70  mutable std::string m_fileVolumeOutputName;
71  mutable bool m_fileVolumeOutputMode;
72 
73  mutable std::ofstream m_fileLayerOutput;
74  mutable std::string m_fileLayerOutputName;
75  mutable bool m_fileLayerOutputMode;
76 
77  mutable std::ofstream m_fileSurfaceOutput;
78  mutable std::string m_fileSurfaceOutputName;
79  mutable bool m_fileSurfaceOutputMode;
80  mutable bool m_fileSurfaceOutputSplit;
81 
82  static int s_displaySurfaces;
83 
84  };
85 
86 }
87 
88 #endif
89 
Trk::TrackingVolumeDisplayer
Definition: TrackingVolumeDisplayer.h:35
Trk::TrackingVolumeDisplayer::m_fileLayerOutputMode
bool m_fileLayerOutputMode
steer writing
Definition: TrackingVolumeDisplayer.h:75
Trk::TrackingVolumeDisplayer::m_fileVolumeOutputName
std::string m_fileVolumeOutputName
file name for visualization action
Definition: TrackingVolumeDisplayer.h:70
python.tests.PyTestsLib.finalize
def finalize(self)
_info( "content of StoreGate..." ) self.sg.dump()
Definition: PyTestsLib.py:53
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition: checker_macros.h:212
initialize
void initialize()
Definition: run_EoverP.cxx:894
Trk::TrackingVolumeDisplayer::m_volumeCounter
int m_volumeCounter
volume counter
Definition: TrackingVolumeDisplayer.h:67
Surface
Definition: Trigger/TrigAccel/TrigCudaFitter/src/Surface.h:7
Trk::TrackingVolumeDisplayer::m_fileSurfaceOutputMode
bool m_fileSurfaceOutputMode
steer writing
Definition: TrackingVolumeDisplayer.h:79
python.RingerConstants.Layer
Layer
Definition: RingerConstants.py:42
Trk::TrackingVolumeDisplayer::m_fileLayerOutputName
std::string m_fileLayerOutputName
file name for visualization action
Definition: TrackingVolumeDisplayer.h:74
python.iconfTool.models.loaders.level
level
Definition: loaders.py:20
Trk::TrackingVolumeDisplayer::m_fileLayerOutput
std::ofstream m_fileLayerOutput
file output for visualization action
Definition: TrackingVolumeDisplayer.h:73
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trk::TrackingVolumeDisplayer::m_fileSurfaceOutput
std::ofstream m_fileSurfaceOutput
file output for visualization action
Definition: TrackingVolumeDisplayer.h:77
merge.output
output
Definition: merge.py:17
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
RecursiveGeometryProcessor.h
Trk::RecursiveGeometryProcessor
Definition: RecursiveGeometryProcessor.h:39
readFiles.openFile
openFile
Definition: readFiles.py:25
Trk::TrackingVolumeDisplayer::s_displaySurfaces
static int s_displaySurfaces
static surface counter
Definition: TrackingVolumeDisplayer.h:82
Trk::MaterialProperties
Definition: MaterialProperties.h:40
Trk::TrackingVolumeDisplayer::m_fileSurfaceOutputSplit
bool m_fileSurfaceOutputSplit
use one file for each layer
Definition: TrackingVolumeDisplayer.h:80
Trk::TrackingVolumeDisplayer::~TrackingVolumeDisplayer
virtual ~TrackingVolumeDisplayer()
Destructor.
Trk::TrackingVolumeDisplayer::m_fileVolumeOutputMode
bool m_fileVolumeOutputMode
steer writing
Definition: TrackingVolumeDisplayer.h:71
CaloCellTimeCorrFiller.filename
filename
Definition: CaloCellTimeCorrFiller.py:24
Trk::Surface
Definition: Tracking/TrkDetDescr/TrkSurfaces/TrkSurfaces/Surface.h:75
checker_macros.h
Define macros for attributes used to control the static checker.
Trk::TrackingVolumeDisplayer::m_fileVolumeOutput
std::ofstream m_fileVolumeOutput
file output for visualization action
Definition: TrackingVolumeDisplayer.h:69
Trk::TrackingVolume
Definition: TrackingVolume.h:121
Trk::Layer
Definition: Layer.h:73
Trk::TrackingVolumeDisplayer::m_fileSurfaceOutputName
std::string m_fileSurfaceOutputName
file name for visualization action
Definition: TrackingVolumeDisplayer.h:78