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

/* $Id$ */ 

///////////////////////////////////////////////////////////////////////////
//                                                                       //
//             Class AnalysisTaskAliPtMothFromPtDaugh                    //
//   AnalysisTaskSE used for the reconstruction of mothers particles     //
//   spectra (pT and pTMin) starting from the pT-spectra of              //
//   daughters particles.                                                //
//                                                                       //
//   Contact: Giuseppe.Bruno@ba.infn.it & Fiorella.Fionda@ba.infn.it     //
//                                                                       //
///////////////////////////////////////////////////////////////////////////

#include "AliAnalysisTaskSE.h"

class AliPtMothFromPtDaugh;
class TNtuple;
class TH1F;
class TList;

class AliAnalysisTaskPtMothFromPtDaugh : public AliAnalysisTaskSE {
  
public:
  AliAnalysisTaskPtMothFromPtDaugh();
  AliAnalysisTaskPtMothFromPtDaugh(Bool_t IsNtuplaCreated);
  virtual ~AliAnalysisTaskPtMothFromPtDaugh();

  virtual void  UserExec(Option_t *option);
  virtual void  UserCreateOutputObjects();
  virtual void  Terminate(Option_t *option); 
 
  void SetPtMothFromPtDaugh(AliPtMothFromPtDaugh * const ptExtr)
              { fPtMothDaugh = ptExtr; }             // set AliPtMothFromPtDaugh object
  void SetReadKineFromNtupla(Bool_t ReadKinematic)
              {fReadKineFromNtupla = ReadKinematic;} // set flag to read kinematics from Ntupla  
  void SetNtuplaFileName(char *fileNtuplaName)
              {fFileNtuplaName=fileNtuplaName;}      // set file name from which Ntupla is read
  TNtuple *ReadNtuplaFromFile(char * inFileName);    // get the Ntupla from the file 
  AliPtMothFromPtDaugh *GetPtMothFromPtDaugh(){return fPtMothDaugh;}   

private:
  
  AliPtMothFromPtDaugh    *fPtMothDaugh;        //Pointer to AliPtMothFromPtDaugh object   
  TNtuple                 *fDecayKine;          //Ntupla to store kinematic information of Decay (optional output)
  Bool_t                   fReadKineFromNtupla; //kTRUE: read kinematics from Ntupla
                                                //kFALSE: loops on events to evaluate Ntupla
  char                    *fFileNtuplaName;     //file name from which Ntupla is read 
  TList                   *fList;               //List of mothers histograms (standard output)

  AliAnalysisTaskPtMothFromPtDaugh(const AliAnalysisTaskPtMothFromPtDaugh &c);
  AliAnalysisTaskPtMothFromPtDaugh& operator= (const AliAnalysisTaskPtMothFromPtDaugh &c);
  
  ClassDef(AliAnalysisTaskPtMothFromPtDaugh,1);  // task for analysis of mother pt spectrum from daughter pt spectrum
};
#endif
 AliAnalysisTaskPtMothFromPtDaugh.h:1
 AliAnalysisTaskPtMothFromPtDaugh.h:2
 AliAnalysisTaskPtMothFromPtDaugh.h:3
 AliAnalysisTaskPtMothFromPtDaugh.h:4
 AliAnalysisTaskPtMothFromPtDaugh.h:5
 AliAnalysisTaskPtMothFromPtDaugh.h:6
 AliAnalysisTaskPtMothFromPtDaugh.h:7
 AliAnalysisTaskPtMothFromPtDaugh.h:8
 AliAnalysisTaskPtMothFromPtDaugh.h:9
 AliAnalysisTaskPtMothFromPtDaugh.h:10
 AliAnalysisTaskPtMothFromPtDaugh.h:11
 AliAnalysisTaskPtMothFromPtDaugh.h:12
 AliAnalysisTaskPtMothFromPtDaugh.h:13
 AliAnalysisTaskPtMothFromPtDaugh.h:14
 AliAnalysisTaskPtMothFromPtDaugh.h:15
 AliAnalysisTaskPtMothFromPtDaugh.h:16
 AliAnalysisTaskPtMothFromPtDaugh.h:17
 AliAnalysisTaskPtMothFromPtDaugh.h:18
 AliAnalysisTaskPtMothFromPtDaugh.h:19
 AliAnalysisTaskPtMothFromPtDaugh.h:20
 AliAnalysisTaskPtMothFromPtDaugh.h:21
 AliAnalysisTaskPtMothFromPtDaugh.h:22
 AliAnalysisTaskPtMothFromPtDaugh.h:23
 AliAnalysisTaskPtMothFromPtDaugh.h:24
 AliAnalysisTaskPtMothFromPtDaugh.h:25
 AliAnalysisTaskPtMothFromPtDaugh.h:26
 AliAnalysisTaskPtMothFromPtDaugh.h:27
 AliAnalysisTaskPtMothFromPtDaugh.h:28
 AliAnalysisTaskPtMothFromPtDaugh.h:29
 AliAnalysisTaskPtMothFromPtDaugh.h:30
 AliAnalysisTaskPtMothFromPtDaugh.h:31
 AliAnalysisTaskPtMothFromPtDaugh.h:32
 AliAnalysisTaskPtMothFromPtDaugh.h:33
 AliAnalysisTaskPtMothFromPtDaugh.h:34
 AliAnalysisTaskPtMothFromPtDaugh.h:35
 AliAnalysisTaskPtMothFromPtDaugh.h:36
 AliAnalysisTaskPtMothFromPtDaugh.h:37
 AliAnalysisTaskPtMothFromPtDaugh.h:38
 AliAnalysisTaskPtMothFromPtDaugh.h:39
 AliAnalysisTaskPtMothFromPtDaugh.h:40
 AliAnalysisTaskPtMothFromPtDaugh.h:41
 AliAnalysisTaskPtMothFromPtDaugh.h:42
 AliAnalysisTaskPtMothFromPtDaugh.h:43
 AliAnalysisTaskPtMothFromPtDaugh.h:44
 AliAnalysisTaskPtMothFromPtDaugh.h:45
 AliAnalysisTaskPtMothFromPtDaugh.h:46
 AliAnalysisTaskPtMothFromPtDaugh.h:47
 AliAnalysisTaskPtMothFromPtDaugh.h:48
 AliAnalysisTaskPtMothFromPtDaugh.h:49
 AliAnalysisTaskPtMothFromPtDaugh.h:50
 AliAnalysisTaskPtMothFromPtDaugh.h:51
 AliAnalysisTaskPtMothFromPtDaugh.h:52
 AliAnalysisTaskPtMothFromPtDaugh.h:53
 AliAnalysisTaskPtMothFromPtDaugh.h:54
 AliAnalysisTaskPtMothFromPtDaugh.h:55
 AliAnalysisTaskPtMothFromPtDaugh.h:56
 AliAnalysisTaskPtMothFromPtDaugh.h:57
 AliAnalysisTaskPtMothFromPtDaugh.h:58
 AliAnalysisTaskPtMothFromPtDaugh.h:59
 AliAnalysisTaskPtMothFromPtDaugh.h:60