4 // Author: I. Hrivnacova
6 // Class TG4GeometryOutputManager
7 // ------------------------------
8 // This class provides methods for writing
9 // tokens (ASCII form of Geant3 routines calls)
10 // into the specified output file.
12 #ifndef TG4_GEOMETRY_OUTPUT_MANAGER_H
13 #define TG4_GEOMETRY_OUTPUT_MANAGER_H
15 #include "TG4Verbose.h"
16 #include "TG4Globals.h"
19 #include <g4std/fstream>
21 class TG4GeometryOutputManager : public TG4Verbose
24 TG4GeometryOutputManager();
25 virtual ~TG4GeometryOutputManager();
28 void OpenFile(G4String filePath);
31 void WriteGsvolu(G4String name, G4String shape, G4int nmed, G4double* par,
34 void WriteGspos(G4String name, G4int num, G4String moth, G4double x,
35 G4double y, G4double z, G4int irot, G4String only);
37 void WriteGsposp(G4String name, G4int num, G4String moth, G4double x,
38 G4double y, G4double z, G4int irot, G4String only,
39 G4double* Rpar, G4int npar);
41 void WriteGsrotm(G4int irot, G4double theta1, G4double phi1,
42 G4double theta2, G4double phi2, G4double theta3, G4double phi3);
44 //void WriteGsatt(G4String name, G4String attr, G4int ival);
46 void WriteGsdvn(G4String vname, G4String vmoth, G4int ndiv, G4int iaxis);
48 void WriteGsdvt(G4String name, G4String moth, G4double Step, G4int iaxis,
49 G4int numed, G4int ndvmx);
51 void WriteGsdvx(G4String name, G4String moth, G4int ndiv, G4int iaxis,
52 G4double Step, G4double c0, G4int numed, G4int ndvmx);
54 void WriteGsdvn2(G4String name, G4String moth, G4int ndiv, G4int iaxis,
55 G4double c0, G4int numed);
57 void WriteGsdvt2(G4String name, G4String moth, G4double Step, G4int iaxis,
58 G4double c0, G4int numed, G4int ndvmx);
60 void WriteGsmate(G4int imate, G4String name, G4double a, G4double z,
61 G4double dens, G4double radl, G4int nwbf, G4double* ubuf);
63 void WriteGsmixt(G4int imate, G4String name, G4double* a, G4double* z,
64 G4double dens, G4int nlmat, G4double* wmat);
66 void WriteGstmed(G4int itmed, G4String name, G4int nmat, G4int isvol,
67 G4int ifield, G4double fieldm, G4double tmaxfd,
68 G4double stemax, G4double deemax, G4double epsil,
69 G4double stmin, G4double* par, G4int npar);
71 void WriteGstpar(G4int itmed, G4String par, G4double parval);
77 G4std::ofstream fOutFile; //output file
80 #endif //TG4_GEOMETRY_OUTPUT_MANAGER_H