]> git.uio.no Git - u/mrichter/AliRoot.git/blob - AliGeant4/macro/g4libs.C
Bugfix in AliPoints2Memory
[u/mrichter/AliRoot.git] / AliGeant4 / macro / g4libs.C
1 // $Id$
2
3 #include <iostream.h>
4
5 static Bool_t isGeant4 = false;
6 static Bool_t isSteer = false;
7 static Bool_t isDetector = false;
8
9 void g4libs()
10 {
11   // g4libs_global();
12   g4libs_granular();
13 }   
14
15 void g4libs_global()
16 {
17 // Loads G4 global libraries, 
18 // external packages: CLHEP, graphics drivers, .. used by G4
19 // and Alice G4 libraries: AliGeant4, TGeant4
20 // ---
21   if (!isGeant4) {
22
23     // CLHEP
24     gSystem->Load("$(CLHEP_BASE_DIR)/lib/libCLHEP");
25
26     // Geant4
27     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4global");
28     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4graphics_reps");
29     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4intercoms");
30     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4materials");
31     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4geometry");
32     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4particles");
33     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4track");
34     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4processes");
35     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4tracking");
36     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4digits+hits");
37     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4event");
38     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4readout");
39     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4run");
40     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG3toG4");
41
42     // Geant4 interfaces
43     //gSystem->Load("/usr/X11R6/lib/libXt");
44     //gSystem->Load("/usr/local/lib/libXm");
45     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4UIcommon");
46     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4UIbasic");
47     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4UIGAG");
48
49     // Geant4 visualization
50     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4vis_management");
51     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4modeling");
52     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4FR");
53     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4OpenGL");
54     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4VRML");
55     
56     // TGeant4, AliGeant4
57     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libTGeant4");
58     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libAliGeant4");
59     
60     isGeant4 = true;
61     cout << "Geant4 global libraries have been loaded." << endl;
62   }    
63 }
64
65 void g4libs_granular()
66 {
67 // Loads G4 granular libraries, 
68 // external packages: CLHEP, graphics drivers, .. used by G4
69 // and Alice G4 libraries: AliGeant4, TGeant4
70 // ---
71   if (!isGeant4) {
72
73     // CLHEP
74     gSystem->Load("$(CLHEP_BASE_DIR)/lib/libCLHEP");
75
76     // G4 categories
77
78     // global
79     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4globman");                      
80     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hepnumerics");
81
82     // graphics_reps
83     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4graphics_reps");       
84
85     // intercoms
86     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4intercoms");
87
88     // materials
89     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4materials");
90
91     // geometry
92     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4geomver");
93     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4volumes");
94     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4magneticfield");
95     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4geometrymng");    
96     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4geomBoolean");    
97     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4csg");                  
98     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4step");
99     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4brep"); 
100     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4specsolids"); 
101     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4stepinterface");
102   
103     // particles          
104     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4partman");
105     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4bosons");             
106     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4baryons");              
107     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4ions");
108     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4mesons");
109     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4leptons");
110     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4shortlived");
111
112     // track
113     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4track");
114
115     // processes
116     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4procman");
117     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4parameterisation");
118     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4decay");                  
119     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4emutils");              
120     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4emstandard");           
121     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4emlowenergy");          
122     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4muons");
123     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4xrays");
124     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_xsect");
125     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_mgt");         
126     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_proc");
127     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_util");
128     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_man_gen");     
129     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_util_gen");
130     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_string_common");
131     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_diffstring");  
132     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_stringfrag");
133     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_HE_gen");      
134     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_kinetic");     
135     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_qgstring");
136     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_HE");          
137     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_LE");          
138     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_deex");
139     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_preequ");      
140     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_stop");
141     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_neu");         
142     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hadronic_iso");         
143     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4optical");
144     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4photolepton_hadron");
145     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4transportation");
146
147     // tracking
148     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4tracking");
149
150     // digits+hits  
151     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4hits");
152     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4digits");               
153     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4detector");             
154
155     // event
156     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4event");                
157
158     // readout
159     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4readout");
160   
161     // run
162     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4run");
163   
164     // g3tog4
165     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG3toG4");                     
166
167     // interfaces
168     //gSystem->Load("/usr/X11R6/lib/libXt");
169     //gSystem->Load("/usr/X11R6/lib/libXm");
170     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4UIcommon");             
171     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4UIbasic");              
172     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4UIGAG");                
173
174     // visualisation
175     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4modeling");
176     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4vis_management");
177     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4FR");                   
178     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4OpenGL");               
179     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4VRML");                 
180     gSystem->Load("$(G4INSTALL)/lib/$(G4SYSTEM)/libG4RayTracer");                 
181   
182     // TGeant4, AliGeant4
183     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libTGeant4");
184     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libAliGeant4");
185
186     isGeant4 = true;
187     cout << "Geant4 granular libraries have been loaded." << endl;
188   }
189 }
190
191 void steerlibs() {
192 // Loads AliRoot steer libraries
193 // ---
194   if (!isSteer) {
195   
196     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libSTEER");
197     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libdummypythia6");
198     gSystem->Load("$(ROOTSYS)/lib/libEGPythia6");
199     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libEVGEN");
200
201     isSteer = true;
202     cout << "AliRoot steer libraries have been loaded." << endl;
203   }  
204 }  
205
206 void detlibs() {
207 // Load AliRoot modules libraries
208 // ---
209   if (!isDetector) {
210
211     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libminicern");
212     // minicern required by MUON
213     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libSTRUCT");
214     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libFMD");
215     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libMUON");
216     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libPHOS");
217     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libPMD");
218     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libRICH");
219     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libTOF");
220     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libTPC");
221     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libTRD");
222     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libZDC");
223     //gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libITS");
224     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libCASTOR");
225     gSystem->Load("$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET)/libSTART");
226     
227     isDetector = true;
228     cout << "AliRoot detectors libraries have been loaded." << endl;
229   }  
230 }