No debug message.
[u/mrichter/AliRoot.git] / TFluka / TFlukaCodes.h
1 #ifndef TFLUKACODES
2 #define TFLUKACODES 
3 typedef enum {
4     kNoProcess         =   0,
5     kKASKAD            =   1,  // KASKAD code first digit
6     kKASKADelarecoil   =  10,  // elastic interaction recoil
7     kKASKADinelarecoil =  11,  // inelastic interaction recoil   
8     kKASKADstopping    =  12,  // stopping particle
9     kKASKADpseudon     =  13,  // pseudo-neutron deposition
10     kKASKADescape      =  14,  // escape
11     kKASKADtimekill    =  15,  // time kill 
12     kKASKADboundary    =  19,  // boundary crossing
13     kKASKADnelint      = 100,  // elastic   interaction 
14     kKASKADinelint     = 101,  // inelastic interaction 
15     kKASKADdecay       = 102,  // particle decay  
16     kKASKADdray        = 103,  // delta ray  generation 
17     kKASKADpair        = 104,  // pair production
18     kKASKADbrems       = 105,  // bremsstrahlung
19     kEMFSCO            =   2,  // EMFSCO code first digit
20     kEMFSCOlocaldep    =  20,  // local energy deposition (i.e. photoelectric)
21     kEMFSCOstopping1   =  21,  // below user-defined cut-off
22     kEMFSCOstopping2   =  22,  // below user cut-off
23     kEMFSCOescape      =  23,  // escape  
24     kEMFSCOtimekill    =  24,  // time kill
25     kEMFSCOboundary    =  29,  // boundary crossing
26     kEMFSCObrems       = 208,  // bremsstrahlung
27     kEMFSCOmoller      = 210,  // Moller
28     kEMFSCObhabha      = 212,  // Bhabha
29     kEMFSCOanniflight  = 214,  // in-flight annihilation
30     kEMFSCOannirest    = 215,  // annihilation at rest
31     kEMFSCOpair        = 217,  // pair production
32     kEMFSCOcompton     = 219,  // Compton scattering
33     kEMFSCOphotoel     = 221,  // photoelectric effect 
34     kEMFSCOrayleigh    = 225,  // Rayleigh scattering  
35     kKASNEU            =   3,  // KASNEU code first digit
36     kKASNEUtargrecoil  =  30,  // target recoil
37     kKASNEUstopping    =  31,  // neutron below threshold
38     kKASNEUescape      =  32,  // escape 
39     kKASNEUtimekill    =  33,  // time kill
40     kKASNEUboundary    =  39,  // boundary crossing
41     kKASNEUhadronic    = 300,  // neutron interaction
42     kKASHEA            =   4,  // KASHEA code first digit
43     kKASHEAescape      =  40,  // escape
44     kKASHEAtimekill    =  41,  // time kill 
45     kKASHEAboundary    =  49,  // boundary crossing
46     kKASHEAdray        = 400,  // delta ray generation
47     kKASOPH            =   5,  // KASOPH code first digit
48     kKASOPHabsorption  =  50,  // optical photon absorption 
49     kKASOPHescape      =  51,  // escape 
50     kKASOPHtimekill    =  52,  // time kill
51     kKASOPHrefraction  =  59   // boundary crossing (i.e. refraction)
52 }
53 FlukaProcessCode_t;       
54
55 typedef enum {
56     kNoCaller       =  0,
57     kEEDRAW         =  2,      // Stepping called from eedraw 
58     kENDRAW         =  3,      // Stepping called from endraw      
59     kMGDRAW         =  4,      // Stepping called from mgdraw 
60     kSODRAW         =  5,      // Stepping called from sodraw 
61     kUSDRAW         =  6,      // Stepping called from usdraw 
62     kBXEntering     = 11,      // Stepping called from bxdraw (entering track) 
63     kBXExiting      = 12,      // Stepping called from bxdraw (exiting  track) 
64     kMGResumedTrack = 40,      // Stepping called from mgdraw (resumed  track) 
65     kUSTCKV         = 50       // Stepping called from ustckv 
66 }
67 FlukaCallerCode_t;        
68
69 typedef enum {
70     kFLUKAcodemin  = -  6,     // minimum particle code used by FLUKA
71     kFLUKAcodemax  =  250,     // maximum particle code used by FLUKA
72     kFLUKAoptical  = -  1,     // code for optical photon
73     kFLUKAelectron =    3,     // electron
74     kFLUKApositron =    4,     // positron
75     kFLUKAphoton   =    7,     // photon
76     kFLUKAmuplus   =   10,     // mu+
77     kFLUKAmuminus  =   11      // mu-
78 }
79 FlukaParticleCode_t;      
80
81 #endif //TFLUKACODE