LCOV - code coverage report
Current view: top level - EVGEN - AliGenPHOSlib.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 2 50.0 %
Date: 2016-06-14 17:26:59 Functions: 1 13 7.7 %

          Line data    Source code
       1             : #ifndef ALIGENPHOSLIB_H
       2             : #define ALIGENPHOSLIB_H
       3             : #include "AliGenLib.h"
       4             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       5             :  * See cxx source for full Copyright notice                               */
       6             : 
       7             : /* $Id$ */
       8             : 
       9             : //======================================================================
      10             : //  AliGenPHOSlib class contains parameterizations of the
      11             : //  pion, kaon, eta, omega, etaprime, phi and baryon (proton, 
      12             : //  antiproton, neutron and anti-neutron) particles for the 
      13             : //  study of the neutral background in PHOS detector. 
      14             : //  Additional particle species simulation options has been added:
      15             : //  Charged Pion, Charged Kaons, KLong Proton, Anti-Proton, Neutron,
      16             : //  Anti-Neutron --> Changes made by Gustavo Conesa in November 2004
      17             : //======================================================================
      18             : 
      19             : class TRandom;
      20             : 
      21           0 : class AliGenPHOSlib :
      22             : public AliGenLib
      23             : {
      24             :  public:
      25             :     enum constants{kPion, kChargedPion, kPi0, kPi0Flat, kKaon, kChargedKaon, kKaon0L,
      26             :                    kEta, kEtaFlat,kOmega, kOmegaFlat, kEtaPrime, kPhi, 
      27             :                    kBaryon, kProton, kAProton, kNeutron, kANeutron};
      28             :     GenFunc   GetPt(Int_t param, const char* tname=0) const;
      29             :     GenFunc   GetY (Int_t param, const char* tname=0) const;
      30             :     GenFuncIp GetIp(Int_t param, const char* tname=0) const;   
      31             :  private:
      32             : // pions
      33             :     static Double_t PtPion(const Double_t *px, const Double_t *dummy);
      34             :     static Double_t PtScal(Double_t pt, Int_t np);
      35             :     static Double_t YPion( const Double_t *py, const Double_t *dummy);
      36             :     static Int_t    IpPion(TRandom* ran);
      37             :     static Int_t    IpChargedPion(TRandom* ran);
      38             : //  pi0 Distribution
      39             :     static Double_t PtPi0(const Double_t *px, const Double_t *dummy);
      40             : //  pi0 Flat Distribution
      41             :     static Double_t PtPi0Flat(const Double_t *px, const Double_t *dummy);
      42             :     static Double_t YPi0Flat( const Double_t *py, const Double_t *dummy);
      43             :     static Int_t    IpPi0Flat(TRandom* ran); 
      44             :     
      45             : // kaons
      46             :     static Double_t PtKaon(const Double_t *px, const Double_t *dummy);
      47             :     static Double_t YKaon( const Double_t *py, const Double_t *dummy);
      48             :     static Int_t    IpKaon(TRandom* ran);
      49             :     static Int_t    IpChargedKaon(TRandom* ran);
      50             :     static Int_t    IpKaon0L(TRandom* ran);
      51             : // etas
      52             :     static Double_t PtEta(const Double_t *px, const Double_t *dummy);
      53             :     static Double_t YEta( const Double_t *py, const Double_t *dummy);
      54             :     static Int_t    IpEta(TRandom *ran);
      55             :     
      56             : // etas Flat Distribution
      57             :     static Double_t PtEtaFlat(const Double_t *px, const Double_t *dummy);
      58             :     static Double_t YEtaFlat( const Double_t *py, const Double_t *dummy);
      59             :     static Int_t    IpEtaFlat(TRandom *ran);
      60             : 
      61             : // omegas
      62             :     static Double_t PtOmega(const Double_t *px, const Double_t *dummy);
      63             :     static Double_t YOmega( const Double_t *py, const Double_t *dummy);
      64             :     static Int_t    IpOmega(TRandom *ran);
      65             :    
      66             : // omegas  Flat Distribution
      67             :     static Double_t PtOmegaFlat(const Double_t *px, const Double_t *dummy);
      68             :     static Double_t YOmegaFlat( const Double_t *py, const Double_t *dummy);
      69             :     static Int_t    IpOmegaFlat(TRandom *ran); 
      70             : 
      71             : // etaprime
      72             :     static Double_t PtEtaprime(const Double_t *px, const Double_t *dummy);
      73             :     static Double_t YEtaprime( const Double_t *py, const Double_t *dummy);
      74             :     static Int_t    IpEtaprime(TRandom* ran);
      75             :     
      76             : // phis
      77             :     static Double_t PtPhi(const Double_t *px, const Double_t *dummy);
      78             :     static Double_t YPhi( const Double_t *py, const Double_t *dummy);
      79             :     static Int_t    IpPhi(TRandom* ran);
      80             :     
      81             : // baryons
      82             :     static Double_t PtBaryon(const Double_t *px, const Double_t *dummy);
      83             :     static Double_t YBaryon( const Double_t *py, const Double_t *dummy);
      84             :     static Int_t    IpBaryon(TRandom *ran);
      85             :     static Int_t    IpProton(TRandom *ran);
      86             :     static Int_t    IpAProton(TRandom *ran);
      87             :     static Int_t    IpNeutron(TRandom *ran);
      88             :     static Int_t    IpANeutron(TRandom *ran);
      89             : 
      90           6 :     ClassDef(AliGenPHOSlib,0) // Library providing y and pT parameterisations
      91             : };
      92             : #endif
      93             : 
      94             : 
      95             : 
      96             : 
      97             : 
      98             : 
      99             : 

Generated by: LCOV version 1.11