User routines stupre and stuprf added.
[u/mrichter/AliRoot.git] / TFluka / Femfstk.h
1 #ifndef FEMFSTK
2 #define FEMFSTK_H 1
3
4 #include "Rtypes.h"
5 #include "cfortran.h"
6
7 #include "Fdimpar.h"
8 extern "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 //*
22 const Int_t idmemf = mestck;
23
24 typedef struct {
25    Double_t e[idmemf]; // total energy in MeV
26    Double_t x[idmemf]; // particle x-coordinate
27    Double_t y[idmemf]; // particle y-coordinate
28    Double_t z[idmemf]; // particle z-coordinate
29    Double_t u[idmemf]; // x direction cosine
30    Double_t v[idmemf]; // y direction cosine
31    Double_t w[idmemf]; // z direction cosine
32    Double_t dnear[idmemf]; // equivalent to GEANT "safety"
33    Double_t upol[idmemf]; // polarisation in x direction
34    Double_t vpol[idmemf]; // polarisation in y direction
35    Double_t wpol[idmemf]; // polarisation in z direction
36    Double_t usnrml[idmemf];
37    Double_t vsnrml[idmemf];
38    Double_t wsnrml[idmemf];
39    Double_t wt[idmemf]; // weight
40    Double_t agemf[idmemf]; // age
41    Double_t espark[idmemf][mkbmx1];
42    Int_t    iespak[idmemf][mkbmx2];
43    Int_t    iq[idmemf]; // charge
44    Int_t    ir[idmemf]; // region
45    Int_t    irlatt[idmemf]; // lattice cell
46    Int_t    nhpemf[idmemf];
47    Int_t    lloemf[idmemf]; // generation number
48    Int_t    louemf[idmemf];
49    Int_t    np; // number of particles in stack
50    Int_t    npstrt; // EMF stack index before the interaction (since
51                     // the projectile disappears it is also the starting
52                     // index of secondaries)
53 } emfstkCommon;
54 #define EMFSTK COMMON_BLOCK(EMFSTK,emfstk)
55 COMMON_BLOCK_DEF(emfstkCommon,EMFSTK);
56 }
57 #endif