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

//#####################################################
//#                                                   # 
//#        Basic Analysis task for Dielectron         #
//#          single event analysis                    #
//#                                                   #
//#  by WooJin J. Park, GSI / W.J.Park@gsi.de         #
//#     Ionut C. Arsene, GSI / I.C.Arsene@gsi.de      #
//#     Magnus Mager, CERN / Magnus.Mager@cern.ch     #
//#     Jens Wiechula, Uni HD / Jens.Wiechula@cern.ch #
//#                                                   #
//#####################################################

#include "AliAnalysisTaskSE.h"

class AliDielectron;
class AliTriggerAnalysis;
class TH1D;

class AliAnalysisTaskDielectronSE : public AliAnalysisTaskSE {
  
public:
  AliAnalysisTaskDielectronSE();
  AliAnalysisTaskDielectronSE(const char *name);
  virtual ~AliAnalysisTaskDielectronSE(){;}

  virtual void  UserExec(Option_t *option);
  virtual void  UserCreateOutputObjects();
  
  void UsePhysicsSelection(Bool_t phy=kTRUE) {fSelectPhysics=phy;}
  void SetTriggerMask(UInt_t mask) {fTriggerMask=mask;}
  UInt_t GetTriggerMask() const { return fTriggerMask; }

  void SetEventFilter(AliAnalysisCuts * const filter) {fEventFilter=filter;}
  void SetTriggerOnV0AND(Bool_t v0and=kTRUE)    { fTriggerOnV0AND=v0and;    }
  void SetRejectPileup(Bool_t pileup=kTRUE)     { fRejectPileup=pileup;     }
  
  void SetDielectron(AliDielectron * const die) { fDielectron = die; }
  
private:
  enum {kAllEvents=0, kSelectedEvents, kV0andEvents, kFilteredEvents, kPileupEvents, kNbinsEvent};
  
  AliDielectron *fDielectron;             // Dielectron framework object

  Bool_t fSelectPhysics;             // Whether to use physics selection
  UInt_t fTriggerMask;               // Event trigger mask
  Bool_t fTriggerOnV0AND;            // if to trigger on V0and
  Bool_t fRejectPileup;              // pileup rejection wanted

  AliTriggerAnalysis *fTriggerAnalysis; //! trigger analysis class

  AliAnalysisCuts *fEventFilter;     // event filter

  TH1D *fEventStat;                  //! Histogram with event statistics
  
  AliAnalysisTaskDielectronSE(const AliAnalysisTaskDielectronSE &c);
  AliAnalysisTaskDielectronSE& operator= (const AliAnalysisTaskDielectronSE &c);
  
  ClassDef(AliAnalysisTaskDielectronSE, 1);
};
#endif
 AliAnalysisTaskDielectronSE.h:1
 AliAnalysisTaskDielectronSE.h:2
 AliAnalysisTaskDielectronSE.h:3
 AliAnalysisTaskDielectronSE.h:4
 AliAnalysisTaskDielectronSE.h:5
 AliAnalysisTaskDielectronSE.h:6
 AliAnalysisTaskDielectronSE.h:7
 AliAnalysisTaskDielectronSE.h:8
 AliAnalysisTaskDielectronSE.h:9
 AliAnalysisTaskDielectronSE.h:10
 AliAnalysisTaskDielectronSE.h:11
 AliAnalysisTaskDielectronSE.h:12
 AliAnalysisTaskDielectronSE.h:13
 AliAnalysisTaskDielectronSE.h:14
 AliAnalysisTaskDielectronSE.h:15
 AliAnalysisTaskDielectronSE.h:16
 AliAnalysisTaskDielectronSE.h:17
 AliAnalysisTaskDielectronSE.h:18
 AliAnalysisTaskDielectronSE.h:19
 AliAnalysisTaskDielectronSE.h:20
 AliAnalysisTaskDielectronSE.h:21
 AliAnalysisTaskDielectronSE.h:22
 AliAnalysisTaskDielectronSE.h:23
 AliAnalysisTaskDielectronSE.h:24
 AliAnalysisTaskDielectronSE.h:25
 AliAnalysisTaskDielectronSE.h:26
 AliAnalysisTaskDielectronSE.h:27
 AliAnalysisTaskDielectronSE.h:28
 AliAnalysisTaskDielectronSE.h:29
 AliAnalysisTaskDielectronSE.h:30
 AliAnalysisTaskDielectronSE.h:31
 AliAnalysisTaskDielectronSE.h:32
 AliAnalysisTaskDielectronSE.h:33
 AliAnalysisTaskDielectronSE.h:34
 AliAnalysisTaskDielectronSE.h:35
 AliAnalysisTaskDielectronSE.h:36
 AliAnalysisTaskDielectronSE.h:37
 AliAnalysisTaskDielectronSE.h:38
 AliAnalysisTaskDielectronSE.h:39
 AliAnalysisTaskDielectronSE.h:40
 AliAnalysisTaskDielectronSE.h:41
 AliAnalysisTaskDielectronSE.h:42
 AliAnalysisTaskDielectronSE.h:43
 AliAnalysisTaskDielectronSE.h:44
 AliAnalysisTaskDielectronSE.h:45
 AliAnalysisTaskDielectronSE.h:46
 AliAnalysisTaskDielectronSE.h:47
 AliAnalysisTaskDielectronSE.h:48
 AliAnalysisTaskDielectronSE.h:49
 AliAnalysisTaskDielectronSE.h:50
 AliAnalysisTaskDielectronSE.h:51
 AliAnalysisTaskDielectronSE.h:52
 AliAnalysisTaskDielectronSE.h:53
 AliAnalysisTaskDielectronSE.h:54
 AliAnalysisTaskDielectronSE.h:55
 AliAnalysisTaskDielectronSE.h:56
 AliAnalysisTaskDielectronSE.h:57
 AliAnalysisTaskDielectronSE.h:58
 AliAnalysisTaskDielectronSE.h:59
 AliAnalysisTaskDielectronSE.h:60
 AliAnalysisTaskDielectronSE.h:61
 AliAnalysisTaskDielectronSE.h:62
 AliAnalysisTaskDielectronSE.h:63
 AliAnalysisTaskDielectronSE.h:64
 AliAnalysisTaskDielectronSE.h:65