ROOT logo
#ifndef ALITRDEFFICIENCYMC_H
#define ALITRDEFFICIENCYMC_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice                               */

/* $Id: AliTRDefficiencyMC.h 27496 2008-07-22 08:35:45Z cblume $ */

////////////////////////////////////////////////////////////////////////////
//                                                                        //
//  Reconstruction QA                                                     //
//                                                                        //
////////////////////////////////////////////////////////////////////////////

#ifndef ALITRDRECOTASK_H
#include "AliTRDrecoTask.h"
#endif
class AliTRDefficiencyMC : public AliTRDrecoTask{
public:
  enum ETRDefficiencyMC{
    kFindable= 0
   ,kNoChmb
   ,kCurved
   ,kPCut
   ,kPhiCut
   ,kThtCut
   ,kLayer
   ,kPrimary
  };
  enum ETRDefficiencyMCstatus{
    kAccept = 0
   ,kMiss
   ,kFake
  };
  AliTRDefficiencyMC();
  AliTRDefficiencyMC(char* name);
  virtual ~AliTRDefficiencyMC(){;}
  
  void        UserCreateOutputObjects();
  void        UserExec(Option_t *);
  
  Bool_t      PostProcess();
  TObjArray*  Histos();
  Bool_t      GetRefFigure(Int_t ifig);
    
private:
  enum{
    kEfficiencyHistogram = 0
   ,kContaminationHistogram = 1
   ,kEfficiencySpeciesHistogram = 2
  };
  AliTRDefficiencyMC(const AliTRDefficiencyMC &);
  AliTRDefficiencyMC& operator=(const AliTRDefficiencyMC &);
  
  void    FillHistograms(Int_t ntracks, Int_t *indices, ETRDefficiencyMCstatus mode);
  void    FillStreamTrackWOMC(AliTRDtrackInfo * const trkInf);

  Int_t   IsFindableNot(AliTRDtrackInfo * const trkInf);
  Int_t   IsRegistered(const AliTRDtrackInfo * const trkInf, Int_t *indices, Int_t nTracks);
    
  static Float_t      fgPCut;   // lower momentum cut
  static Float_t      fgPhiCut; // higher phi cut
  static Float_t      fgThtCut; // higher theta cut


  ClassDef(AliTRDefficiencyMC, 2); // Combined tracking efficiency
};
    
#endif
 AliTRDefficiencyMC.h:1
 AliTRDefficiencyMC.h:2
 AliTRDefficiencyMC.h:3
 AliTRDefficiencyMC.h:4
 AliTRDefficiencyMC.h:5
 AliTRDefficiencyMC.h:6
 AliTRDefficiencyMC.h:7
 AliTRDefficiencyMC.h:8
 AliTRDefficiencyMC.h:9
 AliTRDefficiencyMC.h:10
 AliTRDefficiencyMC.h:11
 AliTRDefficiencyMC.h:12
 AliTRDefficiencyMC.h:13
 AliTRDefficiencyMC.h:14
 AliTRDefficiencyMC.h:15
 AliTRDefficiencyMC.h:16
 AliTRDefficiencyMC.h:17
 AliTRDefficiencyMC.h:18
 AliTRDefficiencyMC.h:19
 AliTRDefficiencyMC.h:20
 AliTRDefficiencyMC.h:21
 AliTRDefficiencyMC.h:22
 AliTRDefficiencyMC.h:23
 AliTRDefficiencyMC.h:24
 AliTRDefficiencyMC.h:25
 AliTRDefficiencyMC.h:26
 AliTRDefficiencyMC.h:27
 AliTRDefficiencyMC.h:28
 AliTRDefficiencyMC.h:29
 AliTRDefficiencyMC.h:30
 AliTRDefficiencyMC.h:31
 AliTRDefficiencyMC.h:32
 AliTRDefficiencyMC.h:33
 AliTRDefficiencyMC.h:34
 AliTRDefficiencyMC.h:35
 AliTRDefficiencyMC.h:36
 AliTRDefficiencyMC.h:37
 AliTRDefficiencyMC.h:38
 AliTRDefficiencyMC.h:39
 AliTRDefficiencyMC.h:40
 AliTRDefficiencyMC.h:41
 AliTRDefficiencyMC.h:42
 AliTRDefficiencyMC.h:43
 AliTRDefficiencyMC.h:44
 AliTRDefficiencyMC.h:45
 AliTRDefficiencyMC.h:46
 AliTRDefficiencyMC.h:47
 AliTRDefficiencyMC.h:48
 AliTRDefficiencyMC.h:49
 AliTRDefficiencyMC.h:50
 AliTRDefficiencyMC.h:51
 AliTRDefficiencyMC.h:52
 AliTRDefficiencyMC.h:53
 AliTRDefficiencyMC.h:54
 AliTRDefficiencyMC.h:55
 AliTRDefficiencyMC.h:56
 AliTRDefficiencyMC.h:57
 AliTRDefficiencyMC.h:58
 AliTRDefficiencyMC.h:59
 AliTRDefficiencyMC.h:60
 AliTRDefficiencyMC.h:61
 AliTRDefficiencyMC.h:62
 AliTRDefficiencyMC.h:63
 AliTRDefficiencyMC.h:64
 AliTRDefficiencyMC.h:65
 AliTRDefficiencyMC.h:66
 AliTRDefficiencyMC.h:67
 AliTRDefficiencyMC.h:68