ROOT logo
#ifndef AliAnalysisTaskSingleMuESD_cxx
#define AliAnalysisTaskSingleMuESD_cxx

/* $Id$ */ 

// analysis task for single muon analysis from the ESD events
// Authors: Bogdan Vulpescu, Nicole Bastid

class TNtuple;
class TH1F;
class AliESDEvent;
class TString;

#include "AliAnalysisTask.h"

class AliAnalysisTaskSingleMuESD : public AliAnalysisTask {
 public:
  AliAnalysisTaskSingleMuESD(const char *name = "AliAnalysisTaskSingleMuESD");
  virtual ~AliAnalysisTaskSingleMuESD() {}
  
  virtual void   ConnectInputData(Option_t *);
  virtual void   CreateOutputObjects();
  virtual void   Exec(Option_t *option);
  virtual void   Terminate(Option_t *);
  
  // force values for the trigger mask, for version where 
  // GetFiredTriggerClasses() does not work; "MUON" or "p-p"
  void SetTriggerType(const Char_t *trig);

 private:
  AliESDEvent *fESD;      // ESD object
  TNtuple     *fNtuple;   // ntuple with track variables
  TH1F        *fTrigger;  // ESD mask from CTP (trigger class)
  Int_t       fMaskTrig1MuL;  // trigger mask: single mu low  pt
  Int_t       fMaskTrig1MuH;  // trigger mask: single mu high pt
  Int_t       fMaskTrigUSL;   // trigger mask: un-like sign mu low  pt
  Int_t       fMaskTrigLSL;   // trigger mask: like sign mu low  pt
  Int_t       fMaskTrigUSH;   // trigger mask: un-like sign mu high pt
  Int_t       fMaskTrigLSH;   // trigger mask: like sign mu high pt
  Bool_t      fTriggerType;   // force the masks values

  AliAnalysisTaskSingleMuESD(const AliAnalysisTaskSingleMuESD&); // not implemented
  AliAnalysisTaskSingleMuESD& operator=(const AliAnalysisTaskSingleMuESD&); // not implemented
 
  void GetEffFitted(Double_t eta, Double_t pt, Double_t rEff[2]);
 
  ClassDef(AliAnalysisTaskSingleMuESD, 1); // single muon analysis from ESD
};

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