2817d3e2 |
1 | // $Id$ |
2 | // Category: geometry |
3 | // |
4 | // This class provides methods for writing |
5 | // tokens (ASCII form of Geant3 routines calls) |
6 | // into the specified output file |
7 | |
8 | #ifndef TG4_GEOMETRY_OUTPUT_MANAGER_H |
9 | #define TG4_GEOMETRY_OUTPUT_MANAGER_H |
10 | |
11 | #include "TG4Globals.h" |
12 | |
13 | #include <globals.hh> |
63c8351a |
14 | #include <g4std/fstream> |
2817d3e2 |
15 | |
16 | class TG4GeometryOutputManager |
17 | { |
18 | public: |
19 | TG4GeometryOutputManager(); |
20 | virtual ~TG4GeometryOutputManager(); |
21 | |
22 | // methods |
23 | void OpenFile(G4String filePath); |
24 | void CloseFile(); |
25 | |
26 | void WriteGsvolu(G4String name, G4String shape, G4int nmed, G4double* par, |
27 | G4int npar); |
28 | |
29 | void WriteGspos(G4String name, G4int num, G4String moth, G4double x, |
30 | G4double y, G4double z, G4int irot, G4String only); |
31 | |
32 | void WriteGsposp(G4String name, G4int num, G4String moth, G4double x, |
33 | G4double y, G4double z, G4int irot, G4String only, |
34 | G4double* Rpar, G4int npar); |
35 | |
36 | void WriteGsrotm(G4int irot, G4double theta1, G4double phi1, |
37 | G4double theta2, G4double phi2, G4double theta3, G4double phi3); |
38 | |
39 | //void WriteGsatt(G4String name, G4String attr, G4int ival); |
40 | |
41 | void WriteGsdvn(G4String vname, G4String vmoth, G4int ndiv, G4int iaxis); |
42 | |
43 | void WriteGsdvt(G4String name, G4String moth, G4double Step, G4int iaxis, |
44 | G4int numed, G4int ndvmx); |
45 | |
46 | void WriteGsdvx(G4String name, G4String moth, G4int ndiv, G4int iaxis, |
47 | G4double Step, G4double c0, G4int numed, G4int ndvmx); |
48 | |
49 | void WriteGsdvn2(G4String name, G4String moth, G4int ndiv, G4int iaxis, |
50 | G4double c0, G4int numed); |
51 | |
52 | void WriteGsdvt2(G4String name, G4String moth, G4double Step, G4int iaxis, |
53 | G4double c0, G4int numed, G4int ndvmx); |
54 | |
55 | void WriteGsmate(G4int imate, G4String name, G4double a, G4double z, |
56 | G4double dens, G4double radl, G4int nwbf, G4double* ubuf); |
57 | |
58 | void WriteGsmixt(G4int imate, G4String name, G4double* a, G4double* z, |
59 | G4double dens, G4int nlmat, G4double* wmat); |
60 | |
61 | void WriteGstmed(G4int itmed, G4String name, G4int nmat, G4int isvol, |
62 | G4int ifield, G4double fieldm, G4double tmaxfd, |
63 | G4double stemax, G4double deemax, G4double epsil, |
64 | G4double stmin, G4double* par, G4int npar); |
65 | |
66 | void WriteGstpar(G4int itmed, G4String par, G4double parval); |
67 | |
68 | void WriteGgclos(); |
69 | |
70 | private: |
71 | // data members |
72 | G4std::ofstream fOutFile; //output file |
73 | }; |
74 | |
75 | #endif //TG4_GEOMETRY_OUTPUT_MANAGER_H |
76 | |