ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
//
// Modified version of AliAnalysisTaskCheckCascade.h
// Used bits of code from AliAnalysisTaskCheckPerformanceStrange
//
// --- David Dobrigkeit Chinellato
//
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

#ifndef ALIANALYSISTASKVZEROEQFACTORTASK_H
#define ALIANALYSISTASKVZEROEQFACTORTASK_H

//Needed for this task
#include "AliAnalysisTaskSE.h"

class TList;
class TH1F;
class TH2F;
class TH3F;
class TVector3;
class THnSparse;

class AliESDpid;
class AliESDtrackCuts;
class AliAnalysisUtils;
class AliESDEvent;
class AliPhysicsSelection;
class AliCFContainer;
class AliVZEROCalibData; 
//class AliAnalysisTaskSE;

//#include "TString.h"
//#include "AliESDtrackCuts.h"


class AliAnalysisTaskVZEROEqFactorTask : public AliAnalysisTaskSE {
 public:
  AliAnalysisTaskVZEROEqFactorTask();
  AliAnalysisTaskVZEROEqFactorTask(const char *name);
  virtual ~AliAnalysisTaskVZEROEqFactorTask();
  
  virtual void   UserCreateOutputObjects();
  virtual void   UserExec(Option_t *option);
  virtual void   Terminate(Option_t *);
  AliVZEROCalibData* GetCalibData() const;

  void SetIsAODAnalysis(Bool_t flag) {fisAOD=flag;}
  Bool_t GetIsAODAnalysis() const {return fisAOD;}
  
 private:
        // Note : In ROOT, "//!" means "do not stream the data from Master node to Worker node" ...
        // your data member object is created on the worker nodes and streaming is not needed.
        // http://root.cern.ch/download/doc/11InputOutput.pdf, page 14
  TList  *fListHist;  //! List of Cascade histograms

  //Re-loaded per event if required, a la AliCentrality
  TH1F*   fEqFactors;               //! Histogram with the equalization factors used in event-plane reconstruction
  AliVZEROCalibData* fCalibData;    //! calibration data
  Long_t fRunNumber;                //! Needed to make sure we haven't swapped runs
 
//===========================================================================================
//   Histograms - Event Counting only 
//===========================================================================================

  TH1D *fHistEventCounter; //! 
  Bool_t fisAOD; // flag for analysis on AODs

   AliAnalysisTaskVZEROEqFactorTask(const AliAnalysisTaskVZEROEqFactorTask&);            // not implemented
   AliAnalysisTaskVZEROEqFactorTask& operator=(const AliAnalysisTaskVZEROEqFactorTask&); // not implemented
   
   ClassDef(AliAnalysisTaskVZEROEqFactorTask, 12);
};

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