Updates needed for move to geant4.6
[u/mrichter/AliRoot.git] / TFluka / Femfstk.h
CommitLineData
f827183d 1#ifndef FEMFSTK
2#define FEMFSTK_H 1
3
4#include "Rtypes.h"
5#include "cfortran.h"
6
7#include "Fdimpar.h"
8extern "C" {
9//*$ create emfstk.add
10//*copy emfstk
11//*
12//*=== emfstk ===========================================================*
13//*
14//*----------------------------------------------------------------------*
15//* *
16//* common emfstk (emf stack) for emf *
17//* *
18//* last change on 08-oct-97 by alfredo ferrari *
19//* *
20//*----------------------------------------------------------------------*
21//*
f827183d 22
23typedef struct {
cd4c194d 24 Double_t etemf[mestck]; // total energy in MeV
25 Double_t pmemf[mestck];
26 Double_t x[mestck]; // particle x-coordinate
27 Double_t y[mestck]; // particle y-coordinate
28 Double_t z[mestck]; // particle z-coordinate
29 Double_t u[mestck]; // x direction cosine
30 Double_t v[mestck]; // y direction cosine
31 Double_t w[mestck]; // z direction cosine
32 Double_t dnear[mestck]; // equivalent to GEANT "safety"
33 Double_t upol[mestck]; // polarisation in x direction
34 Double_t vpol[mestck]; // polarisation in y direction
35 Double_t wpol[mestck]; // polarisation in z direction
36 Double_t usnrml[mestck];
37 Double_t vsnrml[mestck];
38 Double_t wsnrml[mestck];
39 Double_t wtemf[mestck]; // weight
40 Double_t agemf[mestck]; // age
41 Double_t espark[mestck][mkbmx1];
42 Int_t iespak[mestck][mkbmx2];
43 Int_t ichemf[mestck]; // charge
44 Int_t iremf[mestck]; // region
45 Int_t irlatt[mestck]; // lattice cell
46 Int_t nhpemf[mestck];
47 Int_t lloemf[mestck]; // generation number
48 Int_t louemf[mestck];
49 Int_t npemf; // number of particles in stack
f827183d 50 Int_t npstrt; // EMF stack index before the interaction (since
51 // the projectile disappears it is also the starting
52 // index of secondaries)
cd4c194d 53//*d === obsolete variable names === *
54//*d parameter ( idmemf = mestck )
55//*d dimension e (idmemf), wt (idmemf), iq (idmemf), ir (idmemf)
56//*d equivalence ( e (1), etemf (1) )
57//*d equivalence ( wt (1), wtemf (1) )
58//*d equivalence ( ir (1), iremf (1) )
59//*d equivalence ( iq (1), ichemf (1) )
60//*d equivalence ( np, npemf )
f827183d 61} emfstkCommon;
62#define EMFSTK COMMON_BLOCK(EMFSTK,emfstk)
63COMMON_BLOCK_DEF(emfstkCommon,EMFSTK);
64}
65#endif