ROOT logo
#ifndef ALITPCOMPARISONPID_H
#define ALITPCOMPARISONPID_H

// ROOT includes
#include <TList.h>
#include <TH1.h>
#include <TH2.h>

// AliRoot includes
#include <AliAnalysisTask.h>
#include <AliESDEvent.h>
#include <AliESDfriend.h>
#include <AliESDtrack.h>
#include <AliESDfriendTrack.h>
#include <AliTPCseed.h>
#include <TString.h>
class AliGenInfoMaker;
class TTreeSRedirector;
class AliMCEventHadnler;
class TParticle;
class AliMCInfo;
class AliESDRecInfo;
class AliESDEvent;
class AliMCEvent;
class THnSparse;

class AliTPCComparisonPID : public AliAnalysisTask {
public:
  AliTPCComparisonPID();
  AliTPCComparisonPID(const char *name);
  AliTPCComparisonPID(const AliTPCComparisonPID& info);
  virtual ~AliTPCComparisonPID();  
  virtual void   ConnectInputData(Option_t *);
  virtual void   CreateOutputObjects();
  virtual void   Exec(Option_t *option);
  virtual void   Terminate(Option_t *);
  virtual void   FinishTaskOutput();
  void           SetDebugOuputhPath(const char * name){fDebugOutputPath=name;}
  void           Init();
  //
  void           ProcessMCInfo();
  //
  THnSparse * GetTPCsignal(){return fTPCsignal;}
  THnSparse * GetTPCsignalNorm(){return fTPCsignalNorm;}
  //
  // debug streamer part
  //
  TTreeSRedirector *GetDebugStreamer();
  void       SetStreamLevel(Int_t streamLevel){fStreamLevel=streamLevel;}
  void       SetDebugLevel(Int_t level) {fDebugLevel = level;}
  Int_t      GetStreamLevel() const {return fStreamLevel;}
  Int_t      GetDebugLevel() const {return fDebugLevel;}
  //
protected:
  void RegisterDebugOutput();
  AliTPCComparisonPID& operator=(const AliTPCComparisonPID& /*info*/) { return *this;}
  AliMCEvent  * fMCinfo;          //! MC event handler
  AliESDEvent * fESD;             //! current esd event
  //
  //
  //
  THnSparse * fTPCsignal;         //raw tpc signal - dEdx
  THnSparse * fTPCsignalNorm;     //normalized TPC signal
  //
  TTreeSRedirector *fDebugStreamer;     //! debug streamer
  Int_t  fStreamLevel;                  //  debug stream level 
  Int_t  fDebugLevel;                   //  debug level
  TString      fDebugOutputPath; // debug output path
  ClassDef(AliTPCComparisonPID, 1); // Analysis task base class for tracks
};

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