]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STRUCT/AliFRAMEv1.cxx
Decay_t moved to AliDecayer.h
[u/mrichter/AliRoot.git] / STRUCT / AliFRAMEv1.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  2000/06/11 12:35:02  morsch
19 Coding rule violations corrected
20
21 Revision 1.8  2000/02/23 16:25:24  fca
22 AliVMC and AliGeant3 classes introduced
23 ReadEuclid moved from AliRun to AliModule
24
25 Revision 1.7  1999/11/01 20:42:42  fca
26 FRAME version 1 is now the symmetric one.
27
28 Revision 1.6  1999/09/29 09:24:30  fca
29 Introduction of the Copyright and cvs Log
30
31 */
32
33 ////////////////////////////////////////////////
34 //  space frame class                            /
35 ////////////////////////////////////////////////
36
37 #include "AliFRAMEv1.h"
38 #include "AliRun.h"
39 #include "AliMC.h"
40 #include "TSystem.h"
41  
42 ClassImp(AliFRAMEv1)
43  
44 //_____________________________________________________________________________
45 AliFRAMEv1::AliFRAMEv1()
46 {
47 // Constructor
48 }
49
50 //_____________________________________________________________________________
51 AliFRAMEv1::AliFRAMEv1(const char *name, const char *title)
52   : AliFRAME(name,title)
53 {
54 // Constructor
55   printf("Create FRAMEv1 object\n");  
56   fEuclidGeometry="$(ALICE_ROOT)/Euclid/frame1099i.euc";
57   fEuclidMaterial="$(ALICE_ROOT)/Euclid/frame.tme";
58 }
59
60  
61 //___________________________________________
62 void AliFRAMEv1::CreateGeometry()
63 {
64 //Begin_Html
65 /*
66 <img src="picts/frame.gif">
67 */
68 //End_Html
69
70
71 //Begin_Html
72 /*
73 <img src="picts/tree_frame.gif">
74 */
75 //End_Html
76
77   char *filetmp;
78   char topvol[5];
79   
80 //
81 // The Space frame
82   filetmp = gSystem->ExpandPathName(fEuclidGeometry.Data());
83   FILE *file = fopen(filetmp,"r");
84   delete [] filetmp;
85   if(file) {
86     fclose(file);
87     printf(" Reading FRAME geometry\n");
88     ReadEuclid(fEuclidGeometry.Data(),topvol);
89   } else {
90     Warning("CreateGeometry","The Euclid file %s does not exist!\n",
91             fEuclidGeometry.Data());
92     exit(1);
93   }
94 //
95 // --- Place the FRAME ghost volume (B010) in its mother volume (ALIC)
96 //    and make it invisible
97 // 
98 //  AliMatrix(idrotm[2001],90.,0.,90.,90.,180.,0.);
99
100   gMC->Gspos(topvol,1,"ALIC",0,0,0,0,"ONLY");
101
102   gMC->Gsatt(topvol, "SEEN", 0);
103 }
104
105  
106 //___________________________________________
107 void AliFRAMEv1::CreateMaterials()
108 {
109 // Create materials and media (from Euclid file)
110   char *filetmp;
111   printf("Create FRAMEv1 materials\n");
112   filetmp = gSystem->ExpandPathName(fEuclidMaterial.Data());
113   FILE *file = fopen(filetmp,"r");
114   delete [] filetmp;
115   if(file) {
116     fclose(file);
117     ReadEuclidMedia(fEuclidMaterial.Data());
118   } else {
119     Warning("CreateMaterials","The material file %s does not exist!\n",
120             fEuclidMaterial.Data());
121     exit(1);
122   }
123 }
124
125 //_____________________________________________________________________________
126 void AliFRAMEv1::Init()
127 {
128   //
129   // Initialise the module after the geometry has been defined
130   //
131
132   printf("**************************************"
133          " FRAME "
134          "**************************************\n");
135   printf("\n     Version 1 of FRAME initialised, symmetric FRAME\n\n");
136   printf("**************************************"
137          " FRAME "
138          "**************************************\n");
139
140 }