|
SLIC
6.1.1
Simulation for the Linear Collider (SLIC) - Geant4 simulation application
|
A simple, standalone VRML2 writer that dumps the detector geometry in a hierarchical format. More...
#include <VRML2Writer.hh>
Public Member Functions | |
| VRML2Writer (const std::string &filename) | |
| ~VRML2Writer () | |
| void | write () |
Private Member Functions | |
| void | indent () |
| void | processBox (G4Box *box) |
| void | processPhysicalVolume (G4VPhysicalVolume *volume) |
| void | processPolyhedron (G4Polyhedron *poly) |
| void | processSolid (G4VSolid *solid) |
| void | processTopVolume (G4VPhysicalVolume *volume) |
| void | processVisualization (G4VPhysicalVolume *volume) |
| void | unindent () |
| void | writeLine (const std::string &line) |
Private Attributes | |
| int | _indentLevel |
| std::ofstream | _out |
A simple, standalone VRML2 writer that dumps the detector geometry in a hierarchical format.
Definition at line 21 of file VRML2Writer.hh.
| VRML2Writer | ( | const std::string & | filename | ) |
| ~VRML2Writer | ( | ) |
|
private |
Indent once in the output.
Definition at line 203 of file VRML2Writer.cc.
References VRML2Writer::_indentLevel.
Referenced by VRML2Writer::processBox(), VRML2Writer::processPhysicalVolume(), VRML2Writer::processPolyhedron(), VRML2Writer::processTopVolume(), and VRML2Writer::processVisualization().
|
private |
Process a box shape.
| [in] | box | The G4Box. |
Definition at line 139 of file VRML2Writer.cc.
References VRML2Writer::indent(), VRML2Writer::unindent(), and VRML2Writer::writeLine().
Referenced by VRML2Writer::processSolid().
|
private |
Process a physical volume.
| [in] | volume | The physical volume. |
Definition at line 51 of file VRML2Writer.cc.
References VRML2Writer::indent(), VRML2Writer::processSolid(), VRML2Writer::processVisualization(), VRML2Writer::unindent(), and VRML2Writer::writeLine().
Referenced by VRML2Writer::processTopVolume().
|
private |
Process a polyhedron.
| [in] | poly | The G4Polyhedron. |
Definition at line 151 of file VRML2Writer.cc.
References VRML2Writer::indent(), VRML2Writer::unindent(), and VRML2Writer::writeLine().
Referenced by VRML2Writer::processSolid().
|
private |
Process a solid.
| [in] | solid | The G4VSolid. |
Definition at line 131 of file VRML2Writer.cc.
References VRML2Writer::processBox(), and VRML2Writer::processPolyhedron().
Referenced by VRML2Writer::processPhysicalVolume().
|
private |
Recursively process volumes from the top.
| [in] | The | top volume. |
Definition at line 39 of file VRML2Writer.cc.
References VRML2Writer::indent(), VRML2Writer::processPhysicalVolume(), VRML2Writer::unindent(), and VRML2Writer::writeLine().
Referenced by VRML2Writer::write().
|
private |
Process the visualization settings of the volume.
| [in] | volume | The physical volume. |
Definition at line 107 of file VRML2Writer.cc.
References VRML2Writer::indent(), VRML2Writer::unindent(), and VRML2Writer::writeLine().
Referenced by VRML2Writer::processPhysicalVolume().
|
private |
Remove a level of indentation.
Definition at line 207 of file VRML2Writer.cc.
References VRML2Writer::_indentLevel.
Referenced by VRML2Writer::processBox(), VRML2Writer::processPhysicalVolume(), VRML2Writer::processPolyhedron(), VRML2Writer::processTopVolume(), and VRML2Writer::processVisualization().
| void write | ( | ) |
Write out VRML to the current file.
Definition at line 34 of file VRML2Writer.cc.
References VRML2Writer::processTopVolume(), and VRML2Writer::writeLine().
Referenced by VRML2WriterMessenger::SetNewValue().
|
private |
Write a line into the output.
| [in] | line | The line of output. |
Definition at line 196 of file VRML2Writer.cc.
References VRML2Writer::_indentLevel, VRML2Writer::_out, and LOG::endl.
Referenced by VRML2Writer::processBox(), VRML2Writer::processPhysicalVolume(), VRML2Writer::processPolyhedron(), VRML2Writer::processTopVolume(), VRML2Writer::processVisualization(), and VRML2Writer::write().
|
private |
Definition at line 97 of file VRML2Writer.hh.
Referenced by VRML2Writer::indent(), VRML2Writer::unindent(), and VRML2Writer::writeLine().
|
private |
Definition at line 96 of file VRML2Writer.hh.
Referenced by VRML2Writer::VRML2Writer(), VRML2Writer::~VRML2Writer(), and VRML2Writer::writeLine().