]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TGeant4/TG4GeometryOutputManager.h
Added protection in Int_t AliTPCtracker::AliTPCRow::Find(Double_t y) const
[u/mrichter/AliRoot.git] / TGeant4 / TG4GeometryOutputManager.h
1 // $Id$
2 // Category: geometry
3 //
4 // Author: I. Hrivnacova
5 //
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.
11
12 #ifndef TG4_GEOMETRY_OUTPUT_MANAGER_H
13 #define TG4_GEOMETRY_OUTPUT_MANAGER_H
14
15 #include "TG4Verbose.h"
16 #include "TG4Globals.h"
17
18 #include <globals.hh>
19 #include <g4std/fstream>
20
21 class TG4GeometryOutputManager : public TG4Verbose
22 {
23   public:
24     TG4GeometryOutputManager();
25     virtual ~TG4GeometryOutputManager();
26
27     // methods
28     void OpenFile(G4String filePath);
29     void CloseFile();
30
31     void WriteGsvolu(G4String name, G4String shape, G4int nmed, G4double* par,
32               G4int npar);
33
34     void WriteGspos(G4String name, G4int num, G4String moth, G4double x,
35               G4double y, G4double z, G4int irot, G4String only);
36
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);
40
41     void WriteGsrotm(G4int irot, G4double theta1, G4double phi1,
42               G4double theta2, G4double phi2, G4double theta3, G4double phi3);
43
44     //void WriteGsatt(G4String name, G4String attr, G4int ival);
45
46     void WriteGsdvn(G4String vname, G4String vmoth, G4int ndiv, G4int iaxis);
47
48     void WriteGsdvt(G4String name, G4String moth, G4double Step, G4int iaxis,
49               G4int numed, G4int ndvmx);
50
51     void WriteGsdvx(G4String name, G4String moth, G4int ndiv, G4int iaxis,
52               G4double Step, G4double c0, G4int numed, G4int ndvmx);
53
54     void WriteGsdvn2(G4String name, G4String moth, G4int ndiv, G4int iaxis,
55               G4double c0, G4int numed);
56
57     void WriteGsdvt2(G4String name, G4String moth, G4double Step, G4int iaxis,
58               G4double c0, G4int numed, G4int ndvmx);
59
60     void WriteGsmate(G4int imate, G4String name, G4double a, G4double z,
61               G4double dens, G4double radl, G4int nwbf, G4double* ubuf);
62
63     void WriteGsmixt(G4int imate, G4String name, G4double* a, G4double* z,
64               G4double dens, G4int nlmat, G4double* wmat);
65
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);
70
71     void WriteGstpar(G4int itmed, G4String par, G4double parval);
72
73     void WriteGgclos();
74
75   private:
76     // data members
77     G4std::ofstream  fOutFile; //output file
78 };
79
80 #endif //TG4_GEOMETRY_OUTPUT_MANAGER_H
81