LCOV - code coverage report
Current view: top level - EVGEN - AliDecayerPolarized.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 5 20.0 %
Date: 2016-06-14 17:26:59 Functions: 1 9 11.1 %

          Line data    Source code
       1             : #ifndef ALIDECAYERPOLARIZED_H
       2             : #define ALIDECAYERPOLARIZED_H
       3             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       4             :  * See cxx source for full Copyright notice                               */
       5             : 
       6             : // Class to generate decay products for polarized heavy quarkonia
       7             : 
       8             : #include <TLorentzVector.h>
       9             : #include <TClonesArray.h>
      10             : #include <TF1.h>
      11             : 
      12             : #include "AliDecayer.h"
      13             : 
      14             : class TParticle;
      15             : 
      16             : class AliDecayerPolarized : public AliDecayer
      17             : {
      18             :  public:
      19             :     typedef enum { kNoPol = 0, kColSop = 1, kHelicity = 2} Polar_t;
      20             :     typedef enum { kElectron = 1, kMuon = 2} FinState_t;
      21             :   AliDecayerPolarized();
      22             :   AliDecayerPolarized(Double_t alpha, Polar_t systref, FinState_t decprod);
      23             :   AliDecayerPolarized(const AliDecayerPolarized &decayer);
      24             :   virtual ~AliDecayerPolarized();
      25           0 :   void SetPolDec(Double_t alpha=0) {fAlpha=alpha;}
      26           0 :   void SetPolRefSys(Polar_t systref=kColSop) {fSystRef=systref;}
      27           0 :   void SetDecProd(FinState_t decprod=kMuon) {fDecProd=decprod;}
      28           0 :   virtual void  Init(){;}
      29             :   virtual void  Decay(Int_t ipart, TLorentzVector *p);
      30             :   virtual Int_t ImportParticles(TClonesArray *part);
      31             :   // The following methods are dummy
      32             :   virtual void    SetForceDecay(Int_t type);
      33             :   virtual void    ForceDecay();
      34             :   virtual Float_t GetPartialBranchingRatio(Int_t ipart);
      35             :   virtual Float_t GetLifetime(Int_t kf);
      36             :   virtual void    ReadDecayTable();
      37             :     
      38             :  protected:
      39             :   Double_t fAlpha;       // Polarization parameter
      40             :   Polar_t fSystRef;      // Reference system for polarization
      41             :   FinState_t fDecProd;   // Choice of decay products
      42             :   TF1 *fPol;             // ! Angular distribution for decay products
      43             :   TParticle *fMother;    // ! Particle that has to be decayed
      44             :   TParticle *fDaughter1; // ! Decay product no. 1
      45             :   TParticle *fDaughter2; // ! Decay product no. 2
      46             : 
      47             :  private:
      48             :   void  Copy(TObject &decayer) const;
      49             :   AliDecayerPolarized &operator=(const AliDecayerPolarized &decayer) 
      50             :       {decayer.Copy(*this);return(*this);}
      51             :   
      52           6 :   ClassDef(AliDecayerPolarized,1) // Polarized 2-body quarkonium decay
      53             : };
      54             : #endif
      55             : 
      56             :  

Generated by: LCOV version 1.11