Flexible pt range for the efficiency histogramming
[u/mrichter/AliRoot.git] / PYTHIA8 / AliDecayerPythia8.h
CommitLineData
948d10f4 1#ifndef ALIDECAYERPYTHIA8_H
2#define ALIDECAYERPYTHIA8_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$*/
7
8// Implementation of TVirtualMCDecayer using Pythia8
9// Author: andreas.morsch@cern.ch
10
948d10f4 11#include <ParticleData.h>
b584e2f5 12#include <TVirtualMCDecayer.h>
948d10f4 13#include "AliDecayer.h"
14
b584e2f5 15class AliDecayerPythia8 : public TVirtualMCDecayer {
948d10f4 16 public:
17 AliDecayerPythia8();
18 virtual ~AliDecayerPythia8(){;}
ad720100 19 virtual void Init();
b584e2f5 20 virtual void Decay(Int_t pdg, TLorentzVector* p);
21 virtual Int_t ImportParticles(TClonesArray *particles);
948d10f4 22 virtual void SetForceDecay(Decay_t decay) {fDecay=decay;}
23 virtual void SetForceDecay(Int_t decay) {SetForceDecay((Decay_t) decay);}
24 virtual void ForceDecay();
25 virtual Float_t GetPartialBranchingRatio(Int_t ipart);
26 virtual void HeavyFlavourOff() {fHeavyFlavour = kFALSE;}
27 virtual Float_t GetLifetime(Int_t kf);
b584e2f5 28 virtual void ReadDecayTable();
29
30 virtual void SetDebugLevel(Int_t debug) {fDebug = debug;}
31
32 protected:
33 void AppendParticle(Int_t pdg, TLorentzVector* p);
34 void ClearEvent();
948d10f4 35 private:
b062cb58 36 AliDecayerPythia8(const AliDecayerPythia8&);
37 AliDecayerPythia8 operator=(const AliDecayerPythia8&);
948d10f4 38 void SwitchOffHeavyFlavour();
39 void ForceHadronicD(Int_t optUser4Bodies = 1);
b584e2f5 40
41 AliTPythia8* fPythia8; // Pointer to pythia8
42 Int_t fDebug; // Debug level
43
44 Decay_t fDecay; // Forced decay mode
45 Bool_t fHeavyFlavour; //! Flag for heavy flavors
46 static Bool_t fgInit; //! initialization flag
948d10f4 47 ClassDef(AliDecayerPythia8, 1) // Particle Decayer using Pythia8
48};
49#endif
50
51
52
53
54
55
56