LCOV - code coverage report
Current view: top level - EVGEN - AliGenReadersEMD.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 ALIGENREADERSEMD_H
       2             : #define ALIGENREADERSEMD_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 read events from external (TNtupla) file
       7             : // Events -> single EM dissociation of Pb nuclei
       8             : // Data from RELDIS code (by I. Pshenichov)
       9             : //
      10             : #include "AliGenReader.h"
      11             : 
      12             : 
      13             : // --------------------------------------------------------------------------
      14             : class AliGenReadersEMD : public AliGenReader
      15             : {
      16             :  public:
      17             :     enum TrackedPc{kAll=0, kNucleons=1, kOnlyNeutrons=2};
      18             :     
      19             :     AliGenReadersEMD();
      20             :     
      21             :     AliGenReadersEMD(const AliGenReadersEMD &reader);
      22             :     virtual ~AliGenReadersEMD();
      23             :     AliGenReadersEMD & operator=(const AliGenReadersEMD & rhs);
      24             :     // Initialise 
      25             :     virtual void Init();
      26             :     // Reader
      27             :     virtual Int_t NextEvent();
      28             :     virtual TParticle*  NextParticle();
      29             :     virtual void RewindEvent();
      30             :     // Setters
      31           0 :     void TrackNucleons()  {fPcToTrack = kNucleons;}
      32           0 :     void TrackOnlyNeutrons() {fPcToTrack = kOnlyNeutrons;}
      33           0 :     void TrackAll() {fPcToTrack = kAll;}
      34           0 :     void SetStartEvent(Int_t nev) {fStartEvent = nev;}
      35             :     
      36             :  protected:
      37             :     Int_t           fStartEvent;        // points to the first event to read
      38             :     Int_t           fNcurrent;          // points to the current event to read
      39             :     Int_t           fNparticle;         // number of particles
      40             :     TTree           *fTreeNtuple;       // pointer to the TTree
      41             :     //
      42             :     Int_t           fPcToTrack;         // flag for particles to be tracked
      43             :     Int_t           fOffset;            // Needed to correctly read next particle
      44             :     //
      45             :     // --- Declaration of leaves types
      46             :     // **** neutrons
      47             :     Int_t           fNneu;              // No. of neutrons emitte on left side            
      48             :     Float_t         fEneu;              // Energy
      49             :     Float_t         fPxneu[70];         // momentum x component neutrons
      50             :     Float_t         fPyneu[70];         // momentum y component neutrons
      51             :     Float_t         fPzneu[70];         // momentum z component neutrons
      52             :     //  
      53             :     Float_t         fPxfrag;            // momentum x component fragments
      54             :     Float_t         fPyfrag;            // momentum y component fragments
      55             :     Float_t         fPzfrag;            // momentum z component fragments
      56             :     Float_t         fAfrag;             // A fragments
      57             :     Float_t         fZfrag;             // Z fragments
      58             :     //
      59             :     // **** protons
      60             :     Int_t           fNpro;              // No. of protons emitted on left side            
      61             :     Float_t         fEpro;              // Forward energy A side
      62             :     Float_t         fPxpro[50];         // momentum x component A side
      63             :     Float_t         fPypro[50];         // momentum y component A side    
      64             :     Float_t         fPzpro[50];         // momentum z component A side  
      65             :    
      66             :  private:
      67             :     void Copy(TObject&) const;
      68           6 :     ClassDef(AliGenReadersEMD, 1) // Class to read EMD data
      69             : };
      70             : #endif
      71             : 
      72             : 
      73             : 
      74             : 
      75             : 
      76             : 

Generated by: LCOV version 1.11