]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PYTHIA8/AliDecayerPythia8.h
New histograms for centrality and multiplcity checks (Gian Michele)
[u/mrichter/AliRoot.git] / PYTHIA8 / AliDecayerPythia8.h
index 54c970828313faa2410596801d75e1ee64fa1ec1..e5e57312dbe8ef92620cdd3f406a9cf944715e26 100644 (file)
@@ -8,29 +8,42 @@
 // Implementation of TVirtualMCDecayer using Pythia8
 // Author: andreas.morsch@cern.ch
 
-#include <TPythia8Decayer.h>
 #include <ParticleData.h>
+#include <TVirtualMCDecayer.h>
 #include "AliDecayer.h"
 
-class AliDecayerPythia8 : public TPythia8Decayer {
+class AliDecayerPythia8 : public TVirtualMCDecayer {
  public:
   AliDecayerPythia8();
   virtual ~AliDecayerPythia8(){;}
+  virtual void    Init();
+  virtual void    Decay(Int_t pdg, TLorentzVector* p);
+  virtual Int_t   ImportParticles(TClonesArray *particles);
   virtual void    SetForceDecay(Decay_t decay) {fDecay=decay;}
   virtual void    SetForceDecay(Int_t decay)   {SetForceDecay((Decay_t) decay);}
   virtual void    ForceDecay();
   virtual Float_t GetPartialBranchingRatio(Int_t ipart);
   virtual void    HeavyFlavourOff() {fHeavyFlavour = kFALSE;}
   virtual Float_t GetLifetime(Int_t kf);
+  virtual void    ReadDecayTable();
+
+  virtual void    SetDebugLevel(Int_t debug) {fDebug = debug;}
+
+ protected:
+   void AppendParticle(Int_t pdg, TLorentzVector* p);
+   void ClearEvent(); 
  private:
-  Int_t    CountProducts(Pythia8::DecayChannel& decCh, Int_t particle);
-  void     ForceParticleDecay(Int_t particle, Int_t product, Int_t mult);
-  void     ForceParticleDecay(Int_t particle, Int_t* products, Int_t* mult, Int_t npart);
+  AliDecayerPythia8(const AliDecayerPythia8&);
+  AliDecayerPythia8 operator=(const AliDecayerPythia8&);
   void     SwitchOffHeavyFlavour();
   void     ForceHadronicD(Int_t optUser4Bodies = 1);
- protected:
-  Decay_t     fDecay;           //  Forced decay mode
-  Bool_t      fHeavyFlavour;    //! Flag for heavy flavors
+
+  AliTPythia8*  fPythia8;          // Pointer to pythia8
+  Int_t         fDebug;            // Debug level
+  Decay_t       fDecay;            //  Forced decay mode
+  Bool_t        fHeavyFlavour;     //! Flag for heavy flavors
+  static Bool_t fgInit;            //! initialization flag 
   ClassDef(AliDecayerPythia8, 1) // Particle Decayer using Pythia8
 };
 #endif