]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TGeant4/TG4GeometryOutputManager.h
IS0/ANSI standard corrections: added G4std::, changed endl -> G4endl
[u/mrichter/AliRoot.git] / TGeant4 / TG4GeometryOutputManager.h
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>
14 #include <g4std/fstream>
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