01968108b9fab79f2ab5181a50930777ef8090f0
[u/mrichter/AliRoot.git] / STRUCT / AliFRAMEv0.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 /*
17 $Log$
18 Revision 1.9  1999/09/29 09:24:30  fca
19 Introduction of the Copyright and cvs Log
20
21 */
22
23 ////////////////////////////////////////////////
24 //  space frame class                            /
25 ////////////////////////////////////////////////
26
27 #include <stdio.h> 
28 #include <TMath.h>
29 #include <TRandom.h>
30 #include <TVector.h>
31 #include "AliFRAMEv0.h"
32 #include "AliRun.h"
33 #include "stdlib.h"
34 #include "AliMC.h"
35 #include "TSystem.h"
36  
37 ClassImp(AliFRAMEv0)
38  
39 //_____________________________________________________________________________
40 AliFRAMEv0::AliFRAMEv0()
41 {
42 }
43
44 //_____________________________________________________________________________
45 AliFRAMEv0::AliFRAMEv0(const char *name, const char *title)
46   : AliFRAME(name,title)
47 {
48   printf("Create FRAMEv0 object\n");  
49   fEuclidGeometry="$(ALICE_ROOT)/Euclid/frame1099h.euc";
50   fEuclidMaterial="$(ALICE_ROOT)/Euclid/frame.tme";
51 }
52
53  
54 //___________________________________________
55 void AliFRAMEv0::CreateGeometry()
56 {
57 //Begin_Html
58 /*
59 <img src="picts/frame.gif">
60 */
61 //End_Html
62
63
64 //Begin_Html
65 /*
66 <img src="picts/tree_frame.gif">
67 */
68 //End_Html
69
70   char *filetmp;
71   char topvol[5];
72   
73 //
74 // The Space frame
75   filetmp = gSystem->ExpandPathName(fEuclidGeometry.Data());
76   FILE *file = fopen(filetmp,"r");
77   delete [] filetmp;
78   if(file) {
79     fclose(file);
80     printf(" Reading FRAME geometry\n");
81     gAlice->ReadEuclid(fEuclidGeometry.Data(),this,topvol);
82   } else {
83     Warning("CreateGeometry","The Euclid file %s does not exist!\n",
84             fEuclidGeometry.Data());
85     exit(1);
86   }
87 //
88 // --- Place the FRAME ghost volume (B010) in its mother volume (ALIC)
89 //    and make it invisible
90 // 
91 //  AliMatrix(idrotm[2001],90.,0.,90.,90.,180.,0.);
92
93   gMC->Gspos(topvol,1,"ALIC",0,0,0,0,"ONLY");
94
95   gMC->Gsatt(topvol, "SEEN", 0);
96 }
97
98  
99 //___________________________________________
100 void AliFRAMEv0::CreateMaterials()
101 {
102   char *filetmp;
103   printf("Create FRAMEv0 materials\n");
104   filetmp = gSystem->ExpandPathName(fEuclidMaterial.Data());
105   FILE *file = fopen(filetmp,"r");
106   delete [] filetmp;
107   if(file) {
108     fclose(file);
109     gAlice->ReadEuclidMedia(fEuclidMaterial.Data(),this);
110   } else {
111     Warning("CreateMaterials","The material file %s does not exist!\n",
112             fEuclidMaterial.Data());
113     exit(1);
114   }
115 }
116
117
118
119
120
121
122
123
124
125
126
127
128
129