ROOT logo
#ifndef ALIANALYSISTASKCHARGEFLUCTUATIONS_CXX
#define ALIANALYSISTASKCHARGEFLUCTUATIONS_CXX

// Analysis task for the charge fluctuations studies
// Authors: Panos Cristakoglou@cern.ch

class TList;
class TH1F;

class AliESDtrackCuts;

#include "AliAnalysisTaskSE.h"

class AliAnalysisTaskChargeFluctuations : public AliAnalysisTaskSE {
 public:
  AliAnalysisTaskChargeFluctuations(const char *name = "AliAnalysisTaskChargeFluctuations");
  virtual ~AliAnalysisTaskChargeFluctuations() {}
  
  virtual void   UserCreateOutputObjects();
  virtual void   UserExec(Option_t *option);
  virtual void   Terminate(Option_t *);

  void SetAnalysisCutObject(AliESDtrackCuts *const trackCuts) {
    fESDtrackCuts = trackCuts;}
  void SetVertexDiamond(Double_t vx, Double_t vy, Double_t vz) {
    fVxMax = vx;
    fVyMax = vy;
    fVzMax = vz;
  }

  void UseOfflineTrigger() {fUseOfflineTrigger = kTRUE;}

 private:
  TList *fList; //fList object
  TH1F *fHistEventStats; //event stats
  TH1F *fHistVx; //x coordinate of the primary vertex
  TH1F *fHistVy; //y coordinate of the primary vertex
  TH1F *fHistVz; //z coordinate of the primary vertex

  AliESDtrackCuts *fESDtrackCuts; //ESD track cuts

  Bool_t fUseOfflineTrigger;//Usage of the offline trigger selection

  Double_t fVxMax;//vxmax
  Double_t fVyMax;//vymax
  Double_t fVzMax;//vzmax

  AliAnalysisTaskChargeFluctuations(const AliAnalysisTaskChargeFluctuations&); // not implemented
  AliAnalysisTaskChargeFluctuations& operator=(const AliAnalysisTaskChargeFluctuations&); // not implemented
  
  ClassDef(AliAnalysisTaskChargeFluctuations, 1); // example of analysis
};

#endif
 AliAnalysisTaskChargeFluctuations.h:1
 AliAnalysisTaskChargeFluctuations.h:2
 AliAnalysisTaskChargeFluctuations.h:3
 AliAnalysisTaskChargeFluctuations.h:4
 AliAnalysisTaskChargeFluctuations.h:5
 AliAnalysisTaskChargeFluctuations.h:6
 AliAnalysisTaskChargeFluctuations.h:7
 AliAnalysisTaskChargeFluctuations.h:8
 AliAnalysisTaskChargeFluctuations.h:9
 AliAnalysisTaskChargeFluctuations.h:10
 AliAnalysisTaskChargeFluctuations.h:11
 AliAnalysisTaskChargeFluctuations.h:12
 AliAnalysisTaskChargeFluctuations.h:13
 AliAnalysisTaskChargeFluctuations.h:14
 AliAnalysisTaskChargeFluctuations.h:15
 AliAnalysisTaskChargeFluctuations.h:16
 AliAnalysisTaskChargeFluctuations.h:17
 AliAnalysisTaskChargeFluctuations.h:18
 AliAnalysisTaskChargeFluctuations.h:19
 AliAnalysisTaskChargeFluctuations.h:20
 AliAnalysisTaskChargeFluctuations.h:21
 AliAnalysisTaskChargeFluctuations.h:22
 AliAnalysisTaskChargeFluctuations.h:23
 AliAnalysisTaskChargeFluctuations.h:24
 AliAnalysisTaskChargeFluctuations.h:25
 AliAnalysisTaskChargeFluctuations.h:26
 AliAnalysisTaskChargeFluctuations.h:27
 AliAnalysisTaskChargeFluctuations.h:28
 AliAnalysisTaskChargeFluctuations.h:29
 AliAnalysisTaskChargeFluctuations.h:30
 AliAnalysisTaskChargeFluctuations.h:31
 AliAnalysisTaskChargeFluctuations.h:32
 AliAnalysisTaskChargeFluctuations.h:33
 AliAnalysisTaskChargeFluctuations.h:34
 AliAnalysisTaskChargeFluctuations.h:35
 AliAnalysisTaskChargeFluctuations.h:36
 AliAnalysisTaskChargeFluctuations.h:37
 AliAnalysisTaskChargeFluctuations.h:38
 AliAnalysisTaskChargeFluctuations.h:39
 AliAnalysisTaskChargeFluctuations.h:40
 AliAnalysisTaskChargeFluctuations.h:41
 AliAnalysisTaskChargeFluctuations.h:42
 AliAnalysisTaskChargeFluctuations.h:43
 AliAnalysisTaskChargeFluctuations.h:44
 AliAnalysisTaskChargeFluctuations.h:45
 AliAnalysisTaskChargeFluctuations.h:46
 AliAnalysisTaskChargeFluctuations.h:47
 AliAnalysisTaskChargeFluctuations.h:48
 AliAnalysisTaskChargeFluctuations.h:49
 AliAnalysisTaskChargeFluctuations.h:50
 AliAnalysisTaskChargeFluctuations.h:51
 AliAnalysisTaskChargeFluctuations.h:52
 AliAnalysisTaskChargeFluctuations.h:53
 AliAnalysisTaskChargeFluctuations.h:54