|
ATLAS Offline Software
|
Go to the documentation of this file.
22 #include "GaudiKernel/ITHistSvc.h"
28 m_outputFileName(
"TrackingGeometryAscii.txt"),
43 m_outputFile.open(m_outputFileName.c_str());
44 m_outputFile <<
" ============================= TrackingGeometry ASCII file (BOF) =============================" << std::endl;
52 m_outputFile <<
" ============================= TrackingGeometry ASCII file (EOF) =============================" << std::endl;
64 std::stringstream levelBuffer;
65 for (
size_t il = 0;
il <
level; ++
il) levelBuffer <<
" ";
67 m_outputFile << levelBuffer.str() <<
"Trk::TrackingVolume '" << tvol.
volumeName() <<
"'" << std::endl;
68 std::string rotationOffset = levelBuffer.str() +
" ";
70 m_outputPrecision, rotationOffset ) << std::endl;
71 m_outputFile << levelBuffer.str() <<
" - listing Trk::BoundarySurface objects :" << std::endl;
73 for (
size_t ib = 0 ;
ib < bSurfaces.size(); ++
ib ){
74 if ( processNode(bSurfaces[
ib]->surfaceRepresentation(),
level+4).isFailure() )
81 m_outputFile << levelBuffer.str() <<
" - contains " << layerArray->
arrayObjects().size() <<
" confined Trk::Layer objects." << std::endl;
82 m_outputFile << levelBuffer.str() <<
" - listing Trk::Layer objects :" << std::endl;
88 m_outputFile << levelBuffer.str() <<
" - contains " << confinedVolumes->
arrayObjects().size() <<
" confined Trk::TrackingVolume objects." << std::endl;
89 m_outputFile << levelBuffer.str() <<
" - stepping down in hierarchy to Trk::TrackingVolume objects :" << std::endl;
92 return StatusCode::SUCCESS;
100 std::stringstream levelBuffer;
101 for (
size_t il = 0;
il <
level; ++
il) levelBuffer <<
" ";
105 m_outputFile << levelBuffer.str() <<
" Trk::Layer with LayerIndex " << layerIdx << std::endl;
106 m_outputFile << levelBuffer.str() <<
" - writing surface representation : " << std::endl;
108 ATH_MSG_VERBOSE(
"Problems to write out surface representation of Trk::Layer with LayerIndex" << layerIdx);
111 m_outputFile << levelBuffer.str() <<
" - contains " << surfArray->
arrayObjects().size() <<
" confined Trk::Surface objects." << std::endl;
112 m_outputFile << levelBuffer.str() <<
" - listing Trk::Surface objects :" << std::endl;
115 m_outputFile << levelBuffer.str() <<
" Trk::NavigationLayer - no geometrical information." << std::endl;
118 return StatusCode::SUCCESS;
125 std::stringstream levelBuffer;
126 for (
size_t il = 0;
il <
level; ++
il) levelBuffer <<
" ";
128 m_outputFile << levelBuffer.str() <<
" Trk::Surface object of type " <<
static_cast<int>(
sf.type()) << std::endl;
129 std::string rotationOffset = levelBuffer.str() +
" ";
130 m_outputFile << levelBuffer.str() <<
" - transform : " <<
Amg::toString(
sf.transform(),
131 m_outputPrecision, rotationOffset ) << std::endl;
132 return StatusCode::SUCCESS;
StatusCode processNode(const TrackingVolume &tvol, size_t level=0) const
Current implementation: write root visualization to file stream.
StatusCode initialize()
AlgTool initialize method.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
std::vector< SharedObject< BoundarySurface< TrackingVolume > > > & boundarySurfaces()
Method to return the BoundarySurfaces.
#define ATH_MSG_VERBOSE(x)
virtual ~GeometryAsciiDumper()
Destructor.
StatusCode finalize()
AlgTool finalize method.
const LayerArray * confinedLayers() const
Return the subLayer array.
const SurfaceArray * surfaceArray() const
Return the entire SurfaceArray, returns nullptr if no SurfaceArray.
StatusCode finalize()
AlgTool finalize method.
std::string toString(const Translation3D &translation, int precision=4)
GeoPrimitvesToStringConverter.
virtual const Surface & surfaceRepresentation() const =0
Transforms the layer into a Surface representation for extrapolation.
::StatusCode StatusCode
StatusCode definition for legacy code.
int value() const
layerIndex expressed in an integer
Ensure that the ATLAS eigen extensions are properly loaded.
const std::string & volumeName() const
Returns the VolumeName - for debug reason, might be depreciated later.
virtual BinnedArraySpan< T *const > arrayObjects()=0
Return all objects of the Array non-const we can still modify the T.
const Amg::Transform3D & transform() const
Return methods for geometry transform.
#define ATH_MSG_WARNING(x)
const TrackingVolumeArray * confinedVolumes() const
Return the subLayer array.
GeometryAsciiDumper(const std::string &, const std::string &, const IInterface *)
Constructor.
std::string m_outputFileName
where the tree is written to
StatusCode initialize()
AlgTool initialize method.
const LayerIndex & layerIndex() const
get the layerIndex