]>
Commit | Line | Data |
---|---|---|
4c039060 | 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$ | |
27f3d82e | 18 | Revision 1.26 2000/12/18 11:33:50 alibrary |
19 | New call frequence histograms per module and volume | |
20 | ||
8409d8c9 | 21 | Revision 1.25 2000/11/30 07:12:54 alibrary |
22 | Introducing new Rndm and QA classes | |
23 | ||
65fb704d | 24 | Revision 1.24 2000/09/14 07:08:42 fca |
25 | Introducing glvolu in the interface | |
26 | ||
57993b1f | 27 | Revision 1.23 2000/07/12 08:56:32 fca |
28 | Coding convention correction and warning removal | |
29 | ||
8918e700 | 30 | Revision 1.22 2000/07/11 18:25:00 fca |
31 | Coding convention corrections + few minor bug fixes | |
32 | ||
aee8290b | 33 | Revision 1.21 2000/06/27 09:26:18 fca |
34 | Adding dummy SetSTRA | |
35 | ||
f8a4e6b5 | 36 | Revision 1.20 2000/05/16 13:10:41 fca |
37 | New method IsNewTrack and fix for a problem in Father-Daughter relations | |
38 | ||
a01a8b12 | 39 | Revision 1.19 2000/04/09 19:00:26 fca |
40 | Small corrections left over from removal of AliVMC for G4 compatibility | |
41 | ||
0890a827 | 42 | Revision 1.18 2000/02/28 21:03:57 fca |
43 | Some additions to improve the compatibility with G4 | |
44 | ||
229004c4 | 45 | Revision 1.17 2000/02/23 16:25:25 fca |
46 | AliVMC and AliGeant3 classes introduced | |
47 | ReadEuclid moved from AliRun to AliModule | |
48 | ||
b13db077 | 49 | Revision 1.16 2000/01/18 16:27:18 morsch |
50 | Dummy definition of Gftmat, Gbrelm and Gprelm added. | |
51 | ||
7aba2c26 | 52 | Revision 1.15 2000/01/17 19:41:17 fca |
53 | Add SetERAN function | |
54 | ||
9e7a32d1 | 55 | Revision 1.14 1999/11/03 16:31:36 fca |
56 | Dummy ProdProcess should return a value | |
57 | ||
3476b83b | 58 | Revision 1.13 1999/11/03 13:17:08 fca |
59 | Have ProdProcess return const char* | |
60 | ||
6a935c13 | 61 | Revision 1.12 1999/11/02 17:05:06 fca |
62 | Update GetSecondary arguments | |
63 | ||
41982d56 | 64 | Revision 1.11 1999/09/29 09:24:31 fca |
65 | Introduction of the Copyright and cvs Log | |
66 | ||
4c039060 | 67 | */ |
68 | ||
fe4da5cc | 69 | ////////////////////////////////////////////////////// |
70 | // C++ dummy interface to Geant3 basic routines // | |
71 | ////////////////////////////////////////////////////// | |
72 | ||
73 | #include "TGeant3.h" | |
74 | ||
75 | //--------------------------------------------------------- | |
76 | ||
77 | ClassImp(TGeant3) | |
78 | ||
79 | //___________________________________________ | |
80 | TGeant3::TGeant3(){} | |
81 | ||
82 | //___________________________________________ | |
83 | TGeant3::TGeant3(const char *title, Int_t) | |
84 | :AliMC("TGeant3",title){} | |
85 | ||
86 | //___________________________________________ | |
87 | void TGeant3::DefaultRange() {} | |
88 | ||
89 | //___________________________________________ | |
90 | void TGeant3::LoadAddress() {} | |
91 | ||
92 | //=======================functions from GBASE | |
93 | ||
94 | //___________________________________________ | |
b13db077 | 95 | void TGeant3::FinishGeometry() {} |
fe4da5cc | 96 | void TGeant3::Gfile(const char*, const char*) {} |
97 | void TGeant3::GeomIter() {} | |
98 | Int_t TGeant3::CurrentMaterial(Float_t &, Float_t &, Float_t &, Float_t &, Float_t &) const {return 0;} | |
99 | Int_t TGeant3::NextVolUp(Text_t*, Int_t&) {return 0;} | |
0a6d8768 | 100 | Int_t TGeant3::CurrentVolID(Int_t&) const {return 0;} |
101 | const char* TGeant3::CurrentVolName() const {return 0;} | |
01a7ece8 | 102 | Float_t TGeant3::Xsec(char*, Float_t, Int_t, Int_t) {return 0;} |
1f97a957 | 103 | Int_t TGeant3::NofVolumes() const {return 0;} |
8409d8c9 | 104 | Int_t TGeant3::VolId2Mate(Int_t id) const {return 0;} |
0a6d8768 | 105 | Int_t TGeant3::CurrentVolOffID(Int_t, Int_t&) const {return 0;} |
106 | const char *TGeant3::CurrentVolOffName(Int_t) const {return 0;} | |
107 | void TGeant3::TrackPosition(TLorentzVector&) const {} | |
108 | void TGeant3::TrackMomentum(TLorentzVector&) const {} | |
577201de | 109 | Int_t TGeant3::IdFromPDG(Int_t) const {return -1;} |
110 | Int_t TGeant3::PDGFromId(Int_t) const {return -1;} | |
1578254f | 111 | void TGeant3::DefineParticles() {} |
229004c4 | 112 | Int_t TGeant3::VolId(const Text_t*) const {return 0;} |
113 | void TGeant3::SetCut(const char* , Float_t ) {} | |
114 | void TGeant3::SetProcess(const char* , Int_t ) {} | |
099385a4 | 115 | const char* TGeant3::VolName(Int_t ) const {return 0;} |
fe4da5cc | 116 | Float_t TGeant3::TrackCharge() const {return 0;} |
117 | Float_t TGeant3::TrackMass() const {return 0;} | |
a01a8b12 | 118 | Bool_t TGeant3::IsNewTrack() const {return 0;} |
0a6d8768 | 119 | Bool_t TGeant3::IsTrackInside() const {return 0;} |
120 | Bool_t TGeant3::IsTrackEntering() const {return 0;} | |
121 | Bool_t TGeant3::IsTrackExiting() const {return 0;} | |
122 | Bool_t TGeant3::IsTrackOut() const {return 0;} | |
123 | Bool_t TGeant3::IsTrackDisappeared() const {return 0;} | |
124 | Bool_t TGeant3::IsTrackStop() const {return 0;} | |
fe4da5cc | 125 | Int_t TGeant3::NSecondaries() const {return 0;} |
27f3d82e | 126 | AliMCProcess TGeant3::ProdProcess(Int_t) const {return kPNoProcess;} |
127 | AliMCProcess TGeant3::G3toVMC(Int_t) const {return kPNoProcess;} | |
128 | Int_t TGeant3::StepProcesses(TArrayI &) const {return 0;} | |
41982d56 | 129 | void TGeant3::GetSecondary(Int_t, Int_t&, |
130 | TLorentzVector&, TLorentzVector&){} | |
fe4da5cc | 131 | Float_t TGeant3::MaxStep() const {return 0;} |
132 | void TGeant3::SetMaxStep(Float_t ) {} | |
fe4da5cc | 133 | Int_t TGeant3::CurrentEvent() const {return 0;} |
134 | Int_t TGeant3::GetMedium() const {return 0;} | |
135 | Float_t TGeant3::Edep() const {return 0;} | |
136 | Float_t TGeant3::Etot() const {return 0;} | |
fe4da5cc | 137 | Float_t TGeant3::TrackStep() const {return 0;} |
138 | Float_t TGeant3::TrackLength() const {return 0;} | |
139 | Float_t TGeant3::TrackTime() const {return 0;} | |
140 | Int_t TGeant3::TrackPid() const {return 0;} | |
0a6d8768 | 141 | Bool_t TGeant3::IsTrackAlive() const {return 0;} |
fe4da5cc | 142 | void TGeant3::StopTrack() {} |
143 | void TGeant3::StopEvent() {} | |
144 | void TGeant3::SetMaxNStep(Int_t) {} | |
fe4da5cc | 145 | Int_t TGeant3::GetMaxNStep() const {return 0;} |
146 | void TGeant3::Material(Int_t&, const char*, Float_t, Float_t, Float_t, Float_t, | |
147 | Float_t, Float_t*, Int_t){} | |
148 | void TGeant3::Mixture(Int_t&, const char*, Float_t*, Float_t*, Float_t, Int_t, Float_t*){} | |
149 | void TGeant3::Medium(Int_t&, const char*, Int_t, Int_t, Int_t, Float_t, Float_t, | |
150 | Float_t, Float_t, Float_t, Float_t, Float_t*, Int_t){} | |
151 | void TGeant3::Matrix(Int_t&, Float_t, Float_t, Float_t, Float_t, Float_t, Float_t){} | |
152 | void TGeant3::WriteEuclid(const char*, const char*, Int_t, Int_t) {} | |
153 | ||
154 | ||
155 | void TGeant3::Gpcxyz() {} | |
156 | void TGeant3::Ggclos() {} | |
157 | void TGeant3::Glast() {} | |
158 | void TGeant3::Gprint(const char*) {} | |
159 | void TGeant3::Grun() {} | |
160 | void TGeant3::Gtrig() {} | |
161 | void TGeant3::Gtrigc() {} | |
162 | void TGeant3::Gtrigi() {} | |
163 | void TGeant3::Gwork(Int_t) {} | |
164 | void TGeant3::Gzinit() {} | |
165 | ||
166 | ||
167 | //=======================functions from GCONS | |
168 | //___________________________________________ | |
169 | void TGeant3::Gfmate(Int_t, char*, Float_t&, Float_t&, Float_t&, Float_t&, | |
170 | Float_t&, Float_t*, Int_t&){} | |
171 | ||
172 | //___________________________________________ | |
173 | void TGeant3::Gfpart(Int_t, char*, Int_t&, Float_t&, Float_t&, Float_t&){} | |
174 | ||
175 | //___________________________________________ | |
176 | void TGeant3::Gftmed(Int_t, char*, Int_t&, Int_t&, Int_t&, Float_t&, Float_t&, | |
177 | Float_t&, Float_t&, Float_t&, Float_t&, Float_t*, Int_t*){} | |
8918e700 | 178 | void TGeant3::Gftmat(Int_t, Int_t, char*, Int_t, Float_t*, Float_t*, |
179 | Float_t*, Int_t&){} | |
180 | Float_t TGeant3::Gbrelm(Float_t, Float_t, Float_t){return (Float_t) 0;} | |
181 | Float_t TGeant3::Gprelm(Float_t, Float_t, Float_t){return (Float_t) 0;} | |
7aba2c26 | 182 | |
fe4da5cc | 183 | |
184 | //___________________________________________ | |
185 | void TGeant3::Gmate() {} | |
186 | void TGeant3::Gpart() {} | |
187 | void TGeant3::Gsdk(Int_t, Float_t*, Int_t*) {} | |
188 | void TGeant3::Gsmate(Int_t, const char*, Float_t, Float_t, Float_t, Float_t, Float_t) {} | |
189 | void TGeant3::Gsmixt(Int_t, const char*, Float_t*, Float_t*, Float_t, Int_t, Float_t*) {} | |
190 | void TGeant3::Gspart(Int_t, const char*, Int_t, Float_t, Float_t, Float_t) {} | |
191 | void TGeant3::Gstmed(Int_t, const char*, Int_t, Int_t, | |
192 | Int_t, Float_t, Float_t, Float_t, Float_t, Float_t, Float_t) {} | |
fe4da5cc | 193 | void TGeant3::Gsckov(Int_t, Int_t, Float_t *, Float_t *, Float_t *, Float_t *) {} |
27f3d82e | 194 | void TGeant3::Gstpar(Int_t, const char*, Float_t) {} |
fe4da5cc | 195 | |
196 | ||
197 | //=======================functions from GKINE | |
198 | //___________________________________________ | |
199 | void TGeant3::Gfkine(Int_t, Float_t*, Float_t*, Int_t&, Int_t&) {} | |
200 | void TGeant3::Gfvert(Int_t, Float_t*, Int_t&, Int_t&, Float_t&) {} | |
201 | Int_t TGeant3::Gskine(Float_t*, Int_t, Int_t, Float_t*, Int_t){return 0;} | |
202 | ||
203 | //___________________________________________ | |
204 | Int_t TGeant3::Gsvert(Float_t*, Int_t, Int_t, Float_t*, Int_t){return 0;} | |
205 | ||
206 | //=======================functions from GPHYS | |
207 | //___________________________________________ | |
208 | void TGeant3::Gphysi() {} | |
27f3d82e | 209 | void TGeant3::SetCerenkov(Int_t, Int_t, Float_t *, Float_t *, |
210 | Float_t *, Float_t *) {} | |
fe4da5cc | 211 | |
212 | ||
213 | //=======================functions from GTRAK | |
214 | //___________________________________________ | |
215 | void TGeant3::Gdebug() {} | |
216 | void TGeant3::Gekbin() {} | |
217 | void TGeant3::Gfinds() {} | |
218 | void TGeant3::Gsking(Int_t) {} | |
219 | void TGeant3::Gskpho(Int_t) {} | |
220 | void TGeant3::Gsstak(Int_t) {} | |
221 | void TGeant3::Gsxyz() {} | |
222 | void TGeant3::Gtrack() {} | |
223 | void TGeant3::Gtreve() {} | |
aee8290b | 224 | void TGeant3::GtreveRoot() {} |
fe4da5cc | 225 | void TGeant3::Grndm(Float_t*, const Int_t) const {} |
226 | void TGeant3::Grndmq(Int_t&, Int_t&, const Int_t, const Text_t*) {} | |
227 | ||
228 | //=======================functions from GDRAW | |
229 | //___________________________________________ | |
230 | void TGeant3::Gdxyz(Int_t ) {} | |
231 | void TGeant3::Gdcxyz() {} | |
232 | ||
233 | ||
234 | //=======================functions from GGEOM | |
235 | //___________________________________________ | |
236 | void TGeant3::Gdtom(Float_t*, Float_t*, Int_t) {} | |
237 | void TGeant3::Glmoth(const char*, Int_t, Int_t&, Int_t*, Int_t*) {} | |
238 | void TGeant3::Gmedia(Float_t*, Int_t&) {} | |
239 | void TGeant3::Gmtod(Float_t*, Float_t*, Int_t) {} | |
240 | void TGeant3::Gsdvn(const char*, const char*, Int_t, Int_t) {} | |
241 | void TGeant3::Gsdvn2(const char*, const char*, Int_t, Int_t, Float_t, Int_t) {} | |
242 | void TGeant3::Gsdvs(const char*, const char*, Float_t, Int_t, Int_t) {} | |
243 | void TGeant3::Gsdvs2(const char*, const char*, Float_t, Int_t, Float_t, Int_t) {} | |
244 | void TGeant3::Gsdvt(const char*, const char*, Float_t, Int_t, Int_t, Int_t) {} | |
245 | void TGeant3::Gsdvt2(const char *, const char *, Float_t, Int_t, Float_t, Int_t, Int_t) {} | |
246 | void TGeant3::Gsord(const char*, Int_t) {} | |
247 | void TGeant3::Gspos(const char*, Int_t, const char*, Float_t, Float_t, Float_t, Int_t, const char*) {} | |
248 | void TGeant3::Gsposp(const char*, Int_t, const char*, Float_t, Float_t, Float_t, Int_t, const char*, Float_t*, Int_t) {} | |
249 | void TGeant3::Gsrotm(Int_t, Float_t, Float_t, Float_t, Float_t, Float_t, Float_t) {} | |
250 | void TGeant3::Gprotm(Int_t) {} | |
251 | Int_t TGeant3::Gsvolu(const char*, const char*, Int_t, Float_t*, Int_t){return 0;} | |
252 | void TGeant3::Gsatt(const char*, const char*, Int_t) {} | |
253 | void TGeant3::Gfpara(const char*, Int_t, Int_t, Int_t&, Int_t&, Float_t*, Float_t*) {} | |
254 | void TGeant3::Gckpar(Int_t, Int_t, Float_t*) {} | |
255 | void TGeant3::Gckmat(Int_t, char*) {} | |
57993b1f | 256 | Int_t TGeant3::Glvolu(Int_t, Int_t*, Int_t*) {return 0;} |
0890a827 | 257 | void TGeant3::BuildPhysics() {} |
fe4da5cc | 258 | |
259 | //______________________________________________________________________________ | |
260 | void TGeant3::Streamer(TBuffer &R__b) | |
261 | { | |
262 | // Stream an object of class TGeant3. | |
263 | ||
264 | if (R__b.IsReading()) { | |
265 | Version_t R__v = R__b.ReadVersion(); if (R__v) { } | |
266 | AliMC::Streamer(R__b); | |
267 | R__b >> fNextVol; | |
268 | } else { | |
269 | R__b.WriteVersion(TGeant3::IsA()); | |
270 | AliMC::Streamer(R__b); | |
271 | R__b << fNextVol; | |
272 | } | |
273 | } | |
274 | ||
275 | //=======================DRAW functions | |
276 | //____________________________________ | |
277 | void TGeant3::InitHIGZ() {} | |
278 | void TGeant3::Gdopen(Int_t) {} | |
279 | void TGeant3::Gdclose() {} | |
280 | void TGeant3::Gdelete(Int_t) {} | |
281 | void TGeant3::Gdshow(Int_t) {} | |
282 | void TGeant3::Gdopt(const char *,const char *) {} | |
283 | void TGeant3::Gdraw(const char *,Float_t, Float_t, Float_t,Float_t,Float_t,Float_t,Float_t) {} | |
284 | void TGeant3::Gdrawc(const char *,Int_t, Float_t,Float_t,Float_t,Float_t,Float_t) {} | |
285 | void TGeant3::Gdrawx(const char *,Float_t, Float_t, Float_t, | |
286 | Float_t, Float_t,Float_t,Float_t,Float_t,Float_t) {} | |
287 | void TGeant3::Gdhead(Int_t, const char *, Float_t) {} | |
288 | void TGeant3::Gdman(Float_t, Float_t, const char *) {} | |
289 | void TGeant3::Gdspec(const char *) {} | |
290 | void TGeant3::DrawOneSpec(const char *) {} | |
291 | void TGeant3::Gdtree(const char *,Int_t,Int_t) {} | |
292 | void TGeant3::GdtreeParent(const char *,Int_t,Int_t) {} | |
293 | ||
294 | //=======================Set functions | |
295 | //____________________________________ | |
296 | void TGeant3::SetABAN(Int_t) {} | |
297 | void TGeant3::SetANNI(Int_t) {} | |
298 | void TGeant3::SetAUTO(Int_t) {} | |
299 | void TGeant3::SetBOMB(Float_t) {} | |
300 | void TGeant3::SetBREM(Int_t) {} | |
301 | void TGeant3::SetCKOV(Int_t) {} | |
302 | void TGeant3::SetClipBox(const char *,Float_t,Float_t, Float_t,Float_t,Float_t,Float_t) {} | |
303 | void TGeant3::SetCOMP(Int_t) {} | |
304 | void TGeant3::SetCUTS(Float_t,Float_t,Float_t,Float_t, | |
305 | Float_t,Float_t,Float_t,Float_t, | |
306 | Float_t,Float_t, Float_t) {} | |
307 | void TGeant3::SetDCAY(Int_t) {} | |
308 | void TGeant3::SetDEBU(Int_t, Int_t, Int_t) {} | |
309 | void TGeant3::SetDRAY(Int_t) {} | |
9e7a32d1 | 310 | void TGeant3::SetERAN(Float_t, Float_t, Int_t) {} |
fe4da5cc | 311 | void TGeant3::SetHADR(Int_t) {} |
312 | void TGeant3::SetKINE(Int_t, Float_t, Float_t, Float_t, Float_t, | |
313 | Float_t, Float_t, Float_t, Float_t, Float_t, | |
314 | Float_t) {} | |
315 | void TGeant3::SetLOSS(Int_t) {} | |
316 | void TGeant3::SetMULS(Int_t) {} | |
317 | void TGeant3::SetMUNU(Int_t) {} | |
318 | void TGeant3::SetOPTI(Int_t) {} | |
319 | void TGeant3::SetPAIR(Int_t) {} | |
320 | void TGeant3::SetPFIS(Int_t) {} | |
321 | void TGeant3::SetPHOT(Int_t) {} | |
322 | void TGeant3::SetRAYL(Int_t) {} | |
f8a4e6b5 | 323 | void TGeant3::SetSTRA(Int_t) {} |
fe4da5cc | 324 | void TGeant3::SetSWIT(Int_t , Int_t) {} |
325 | void TGeant3::SetTRIG(Int_t) {} | |
7ac3f11b | 326 | void TGeant3::SetUserDecay(Int_t) {} |
fe4da5cc | 327 | void TGeant3::Vname(const char *, char *) {} |
328 | void TGeant3::InitLego() {} | |
6991054d | 329 | void TGeant3::Ertrgo() {} |
330 | void TGeant3::Ertrak(const Float_t *const , const Float_t *const , | |
331 | const Float_t *, const Float_t *, | |
332 | Int_t , Option_t *) {} | |
333 | ||
334 | ||
fe4da5cc | 335 | |
336 | ||
337 | #include "AliCallf77.h" | |
338 | ||
339 | ||
340 | extern "C" type_of_call { | |
341 | ||
342 | // This is only for ITS | |
343 | ||
344 | void type_of_call gsvolu_(){} | |
345 | void type_of_call gspos_(){} | |
346 | void type_of_call gsatt_(){} | |
347 | void type_of_call gsdvn_(){} | |
348 | void type_of_call gsposp_(){} | |
349 | void type_of_call atg_(){} | |
350 | void type_of_call sxsrot_(){} | |
351 | ||
352 | // All this for ZDC | |
353 | ||
354 | void type_of_call grndm_(){} | |
355 | void type_of_call gphits_(){} | |
356 | void type_of_call gfhits_() {} | |
357 | void type_of_call gsvert_(){} | |
358 | void type_of_call gskine_(){} | |
359 | void type_of_call gfpart_(){} | |
360 | void type_of_call lorenf_(){} | |
361 | void type_of_call gpvert_(){} | |
362 | void type_of_call gpkine_(){} | |
363 | void type_of_call rnorml_(){} | |
364 | void type_of_call gfpath_() {} | |
365 | void type_of_call uctoh_() {} | |
366 | void type_of_call glvolu_() {} | |
367 | void type_of_call gmtod_() {} | |
368 | void type_of_call gfkine_() {} | |
369 | void type_of_call vmod_() {} | |
370 | void type_of_call gsahit_() {} | |
371 | void type_of_call gschit_() {} | |
372 | void type_of_call gdtom_() {} | |
373 | void type_of_call rnpssn_() {} | |
374 | void type_of_call ucopy_() {} | |
375 | } |