1 #ifndef AliGenFLUKAsource_H
2 #define AliGenFLUKAsource_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 /////////////////////////////////////////////////////////
9 // Manager and hits classes for set:MUON version 0 //
10 /////////////////////////////////////////////////////////
11 #include "AliGenerator.h"
17 // Read background particles from a FLUKA boundary source file
19 class AliGenFLUKAsource : public AliGenerator
24 Int_t fIkine; //Flag to choose type of particles to be read in
25 // 6 - all particles types
28 // 9 - only charged particles
29 Float_t fAgeMax; //Maximum age of particle
30 Float_t fAddWeight; //Add weight for neutrons
31 Float_t fZshift; //Shift the Z of impact point by this quantity
34 const Text_t *fFileName; //!Choose the file
36 TTree *fTreeFluka; //pointer to the TTree
37 //Declaration of variables read from the file -- TTree type
58 AliGenFLUKAsource(Int_t npart);
59 virtual ~AliGenFLUKAsource();
61 virtual void Init() {}
62 // Initialise fluka data
63 virtual void FlukaInit();
64 // choose particle type
65 virtual void SetPartFlag(Int_t ikine) {fIkine=ikine;}
67 virtual void SetAgeMax(Float_t agemax) {fAgeMax=agemax;}
68 // use additional weight on neutrals
69 virtual void SetAddWeight(Float_t addwgt) {fAddWeight=addwgt;}
71 virtual void SetZshift(Float_t zshift) {fZshift=zshift;}
72 // set file name of data file
73 virtual void SetFileName(const Text_t *filname) {fFileName=filname;}
74 virtual void AddFile(const Text_t *filname) ;
75 // read only fraction of data
76 virtual void SetFraction(Float_t frac=1.){fFrac=frac;}
78 virtual void Generate();
80 ClassDef(AliGenFLUKAsource,1) //Boundary source