Removing AliMCProcess and AliMC
[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.15  2000/12/21 16:41:06  morsch
19 Coding convention clean-up (RS3)
20
21 Revision 1.14  2000/10/02 21:28:15  fca
22 Removal of useless dependecies via forward declarations
23
24 Revision 1.13  2000/06/11 12:34:49  morsch
25 Coding rule violations corrected
26
27 Revision 1.12  2000/02/23 16:25:24  fca
28 AliVMC and AliGeant3 classes introduced
29 ReadEuclid moved from AliRun to AliModule
30
31 Revision 1.11  1999/11/01 20:42:42  fca
32 FRAME version 1 is now the symmetric one.
33
34 Revision 1.10  1999/10/06 20:56:55  fca
35 Introducing new frame 1099
36
37 Revision 1.9  1999/09/29 09:24:30  fca
38 Introduction of the Copyright and cvs Log
39
40 */
41
42 ////////////////////////////////////////////////
43 //  space frame class                            /
44 ////////////////////////////////////////////////
45
46 #include "AliFRAMEv0.h"
47 #include "AliRun.h"
48 #include "TSystem.h"
49  
50 ClassImp(AliFRAMEv0)
51  
52 //_____________________________________________________________________________
53 AliFRAMEv0::AliFRAMEv0()
54 {
55 // Constructor
56 }
57
58 //_____________________________________________________________________________
59 AliFRAMEv0::AliFRAMEv0(const char *name, const char *title)
60   : AliFRAME(name,title)
61 {
62 // Constructor
63   printf("Create FRAMEv0 object\n");  
64   fEuclidGeometry="$(ALICE_ROOT)/Euclid/frame1099h.euc";
65   fEuclidMaterial="$(ALICE_ROOT)/Euclid/frame.tme";
66 }
67
68  
69 //___________________________________________
70 void AliFRAMEv0::CreateGeometry()
71 {
72 //Begin_Html
73 /*
74 <img src="picts/frame.gif">
75 */
76 //End_Html
77
78
79 //Begin_Html
80 /*
81 <img src="picts/tree_frame.gif">
82 */
83 //End_Html
84
85   char *filetmp;
86   char topvol[5];
87   
88 //
89 // The Space frame
90   filetmp = gSystem->ExpandPathName(fEuclidGeometry.Data());
91   FILE *file = fopen(filetmp,"r");
92   delete [] filetmp;
93   if(file) {
94     fclose(file);
95     printf(" Reading FRAME geometry\n");
96     ReadEuclid(fEuclidGeometry.Data(),topvol);
97   } else {
98     Warning("CreateGeometry","The Euclid file %s does not exist!\n",
99             fEuclidGeometry.Data());
100     exit(1);
101   }
102 //
103 // --- Place the FRAME ghost volume (B010) in its mother volume (ALIC)
104 //    and make it invisible
105 // 
106 //  AliMatrix(idrotm[2001],90.,0.,90.,90.,180.,0.);
107
108   gMC->Gspos(topvol,1,"ALIC",0,0,0,0,"ONLY");
109
110   gMC->Gsatt(topvol, "SEEN", 0);
111 }
112
113  
114 //___________________________________________
115 void AliFRAMEv0::CreateMaterials()
116 {
117 // Create Geant materials
118 //
119   char *filetmp;
120   printf("Create FRAMEv0 materials\n");
121   filetmp = gSystem->ExpandPathName(fEuclidMaterial.Data());
122   FILE *file = fopen(filetmp,"r");
123   delete [] filetmp;
124   if(file) {
125     fclose(file);
126     ReadEuclidMedia(fEuclidMaterial.Data());
127   } else {
128     Warning("CreateMaterials","The material file %s does not exist!\n",
129             fEuclidMaterial.Data());
130     exit(1);
131   }
132 }
133
134 //_____________________________________________________________________________
135 void AliFRAMEv0::Init()
136 {
137   //
138   // Initialise the module after the geometry has been defined
139   //
140
141   printf("**************************************"
142          " FRAME "
143          "**************************************\n");
144   printf("\n     Version 0 of FRAME initialised, "
145          "with openings for PHOS and RICH\n\n");
146   printf("**************************************"
147          " FRAME "
148          "**************************************\n");
149
150 }
151
152
153
154
155
156
157
158
159
160
161
162
163