LCOV - code coverage report
Current view: top level - PYTHIA6/AliPythia6 - AliDecayerPythia.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 3 9 33.3 %
Date: 2016-06-14 17:26:59 Functions: 3 15 20.0 %

          Line data    Source code
       1             : #ifndef ALIDECAYERPYTHIA_H
       2             : #define ALIDECAYERPYTHIA_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 AliDecayer using Pythia
       9             : // Method forwarding to the AliPythia instance.
      10             : // Author: andreas.morsch@cern.ch
      11             : 
      12             : #include "AliDecayer.h"
      13             : class AliPythia;
      14             : class TClonesArrray;
      15             : 
      16             : class AliDecayerPythia :
      17             : public AliDecayer
      18             : {
      19             :  public:
      20             :     AliDecayerPythia();
      21             :     AliDecayerPythia(const AliDecayerPythia &decayer);
      22             :     //    
      23           0 :     virtual         ~AliDecayerPythia(){;}
      24             :     virtual void    Init();
      25             :     virtual void    Decay(Int_t idpart, TLorentzVector *p);
      26             :     virtual Int_t   ImportParticles(TClonesArray *particles);
      27           2 :     virtual void    SetForceDecay(Decay_t decay) {fDecay=decay;}
      28             :     virtual void    SetForceDecay(Int_t decay)
      29           2 :       {SetForceDecay((Decay_t) decay);}
      30             :     virtual void    ForceDecay();
      31           0 :     virtual void    SetPatchOmegaDalitz() {fPatchOmegaDalitz = 1;}
      32           0 :     virtual void    SetDecayerExodus()    {fDecayerExodus = 1;}
      33           0 :     virtual void    HeavyFlavourOff() {fHeavyFlavour = kFALSE;}
      34           0 :     virtual void    DecayLongLivedParticles()  {fLongLived    = kTRUE;}
      35             :     virtual Float_t GetPartialBranchingRatio(Int_t ipart);
      36             :     virtual Float_t GetLifetime(Int_t kf);
      37             :     virtual void    SwitchOffBDecay();
      38           0 :     virtual void    SwitchOffPi0() {fPi0 = 0;}
      39             :     virtual void    SwitchOffParticle(Int_t kf);
      40             :     virtual void    WriteDecayTable();
      41             :     virtual void    ReadDecayTable();
      42             :     
      43             :  private:
      44             :     void     Lu1Ent(Int_t flag, Int_t idpart, 
      45             :                     Double_t mom, Double_t theta, Double_t phi);
      46             :     Int_t    CountProducts(Int_t channel, Int_t particle);
      47             :     void     ForceParticleDecay(Int_t particle, Int_t product, Int_t mult);
      48             :     void     ForceParticleDecay(Int_t particle, const Int_t* products, Int_t* mult, Int_t npart, Bool_t flag = 0);
      49             :     void     ForceHadronicD(Int_t optUse4Bodies=1, Int_t optUseDtoV0=0);
      50             :     void     ForceOmega();
      51             :     void     ForceLambda();
      52             :     void     SwitchOffHeavyFlavour();
      53             :     void     ForceBeautyUpgrade();
      54             :     Float_t  GetBraPart(Int_t kf);
      55             :     void     Copy(TObject &decayer) const;
      56             : 
      57             :     AliDecayerPythia &operator=(const AliDecayerPythia &decayer) 
      58             :     {decayer.Copy(*this);return(*this);}
      59             :     
      60             :     
      61             :  private:
      62             :     AliPythia*  fPythia;          //! Pointer to AliPythia
      63             :     Decay_t     fDecay;           //  Forced decay mode
      64             :     Float_t     fBraPart[501];    //! Branching ratios
      65             :     Bool_t      fHeavyFlavour;    //! Flag for heavy flavors
      66             :     Bool_t      fLongLived;       //! Flag for long lived particle decay
      67             :     Bool_t      fPatchOmegaDalitz;//! Flag to patch the omega Dalitz decays 
      68             :     Bool_t      fDecayerExodus;  //! Flag for EXODUS decayer
      69             :     Bool_t      fPi0;             //! Flag for pi0 decay 
      70             :     static Bool_t fgInit;         //! initialization flag 
      71             :     
      72           2 :     ClassDef(AliDecayerPythia, 5) // AliDecayer implementation using Pythia  
      73             : };
      74             : #endif
      75             : 
      76             : 
      77             : 
      78             : 
      79             : 
      80             : 
      81             : 

Generated by: LCOV version 1.11