fix AliHLTGlobalEsdConverterComponent
[u/mrichter/AliRoot.git] / TEvtGen / AliGenEvtGen.h
CommitLineData
da0e9ce3 1#ifndef ALIGENEVTGEN_H
2#define ALIGENEVTGEN_H
3
4/* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6///////////////////////////////////////////////////////////////////////////
7// //
8// AliGenEvtGen class to performs decays of particles generated by a //
9// previous generator. It inherits from AliGenerator. //
10// //
11// Origin: Giuseppe.Bruno@ba.infn.it & Fiorella.Fionda@ba.infn.it //
12///////////////////////////////////////////////////////////////////////////
13
14#include "AliGenerator.h"
15#include "AliDecayerEvtGen.h"
16
17class TParticle;
18
19class AliGenEvtGen : public AliGenerator {
20
21 public:
22
23 typedef enum {kAllPart, kBeautyPart, kCharmPart} DecayOff_t;
24
25 AliGenEvtGen();
26
27 ~AliGenEvtGen();
28
29 virtual void Init();
30 virtual void Generate();
31 AliDecayer* GetDecayer() {return fDecayer;}
32 void SetForceDecay(Decay_t decay = kAll) {fForceDecay = decay;} //set a decay mode
33 Bool_t SetUserDecayTable(Char_t *path);
34 void SetParticleSwitchedOff(DecayOff_t decay) {fSwitchOff = decay;} //set particles to be decayed by EvtGen
35
36 protected:
37 Int_t GetFlavour(Int_t pdgCode);
38
39
40 private:
41 AliStack *fStack; //!pointer to AliStack
42 AliDecayerEvtGen *fDecayer; //!pointer to AliDecayerEvtGen
43 Decay_t fForceDecay; //!decay case
44 DecayOff_t fSwitchOff; //!particle decay
45 Bool_t fUserDecay; //!TRUE if a user decay table is set
46 Char_t *fUserDecayTablePath; //!pointer to path of user decay table
47
48 AliGenEvtGen(const AliGenEvtGen &EvtGen);
49 AliGenEvtGen & operator=(const AliGenEvtGen & rhs);
50
51
52
53 ClassDef(AliGenEvtGen,0) //AliGenerator interface to EvtGen
54};
55
56////////////////////////////////////////////////////////////////////////////////////////////////
57
58#endif