polish
[u/mrichter/AliRoot.git] / STRUCT / AliALIFE.h
CommitLineData
660eb9a2 1#ifndef ALIALIFE_H
2#define ALIALIFE_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
844b1dde 8#include "TObject.h"
660eb9a2 9#include "TString.h"
10
11class AliALIFE : public TObject {
12 public:
13 AliALIFE(const char *name1, const char *name2);
14 AliALIFE();
844b1dde 15 virtual ~AliALIFE() {}
660eb9a2 16 void Cylinder(Float_t rmin, Float_t rmax,
17 Float_t zmin, Float_t zmax,
18 Float_t pos[3],
19 char* Material, char* Field="MF", char* Cuts="$UNSHIELDED");
20 void OnionCylinder(Float_t* r, Int_t nr, Float_t zmin, Float_t zmax,
21 Float_t pos[3],
22 char** Materials, char** Fields=0, char** Cuts=0);
23
24 void Cone(Float_t rmin1, Float_t rmin2,
25 Float_t rmax1, Float_t rmax2,
26 Float_t zmin, Float_t zmax,
27 Float_t pos[3],
28 char* Material, char* Field="MF", char* Cuts="$UNSHIELDED");
29
30 void OnionCone(Float_t* r1, Float_t* r2, Int_t nr,
31 Float_t zmin, Float_t zmax,
32 Float_t pos[3],
33 char** Materials, char** Fields=0, char** Cuts=0);
34
35 void PolyCone(Float_t* rmin, Float_t* rmax, Float_t* z, Int_t nz,
36 Float_t pos[3],
37 char* Material, char* Field="MF", char* Cuts="$UNSHIELDED");
38
39 void OnionPolyCone(Float_t** r , Float_t* z, Int_t nr, Int_t nz,
40 Float_t pos[3],
41 char** Materials, char** Fields=0, char** Cuts=0);
42
43 void Comment(char* Comment);
44
45 void Finish();
46
47 void SetDefaultVolume(TString vol1, TString vol2)
48 {fDefaultVolume1=vol1; fDefaultVolume2=vol2;}
49
50 void SetDefaultVolume(TString vol)
51 {fDefaultVolume1=vol;}
52
53 protected:
54 Int_t fNBodies; // current number of bodies
55 Int_t fNVolumes; // current number of volumes
56 TString fBodyFile; // File for Fluka bodies
57 TString fVolumeFile; // File for Fluka volumes
58 FILE *fFile1; // ! output file for fluka geometry in ALIFE format
59 FILE *fFile2; // ! scratch file
60 TString fDefaultVolume1; // default external volume 1
61 TString fDefaultVolume2; // default external volume 2
62 private:
63 void BodyHeader();
64 void VolumeHeader();
65
66
67 ClassDef(AliALIFE,1)
68};
69#endif
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84