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

/* $Id: AliAnalysisTaskLukeV0.h 45956 2010-12-10 12:55:37Z agheata $ */
/* AliAnalysisTaskLukeV0.h
 *
 * Header file for task AliAnalysisTaskLukeV0.cxx
 * The task is designed to extract Lambda, Antilambda & K0s spectra from PbPb collision data/MC 
 *
 * Based on tutorial example from offline pages
 * Edited by Arvinder Palaha
 * Further adapted by Luke Hanratty
 */

#ifndef ALIANALYSISTASKLukeV0_H
#define ALIANALYSISTASKLukeV0_H

class TH1F;
class TH2F;
class TList;
class AliESDtrackCuts;
class AliPIDResponse;

#ifndef ALIANALYSISTASKSE_H
#include "AliAnalysisTaskSE.h"
#endif

class AliAnalysisTaskLukeV0 : public AliAnalysisTaskSE {
 public:
    AliAnalysisTaskLukeV0();
    AliAnalysisTaskLukeV0(const char *name);
    virtual ~AliAnalysisTaskLukeV0();
    
    virtual void     UserCreateOutputObjects();
    virtual void     UserExec(Option_t *option);
    virtual void     Terminate(Option_t *);
    
 private:
    TList           *fOutputList;			// Output list
    AliESDtrackCuts *fTrackCuts;			// Track cuts
	AliPIDResponse	*fPIDResponse;			// PID
    TH1F			*fHistCosPA;			// Cosine of pointing angle
	TH1F			*fHistDCAV0Daughters;	//	DCA between the v0 daughters
	TH1F			*fHistDecayL;			//	3d decay length of V0
	TH1F			*fHistImpactxyN;		//	Impact paramater of negative daughter in xy plane
	TH1F			*fHistImpactzN;			//  Impact paramater of negative daughter in z direction
	TH1F			*fHistImpactxyP;		//  Impact paramater of positive daughter in xy plane
	TH1F			*fHistImpactzP;			//  Impact paramater of positive daughter in z direction
	TH1F			*fHistMCLambdacTau;		// cTau distribution of MC lambdas
	TH1F			*fHistMCLambdaNotcTau;	// cTau distribution of MC lambda background
	TH1F			*fHistMCLambdaDecayL;	// Decay Length distribution of MC lambdas
	TH1F			*fHistMCLambdaNotDecayL;	// Decay Length distribution of MC lambda background
	TH1F			*fHistMcNLambdaPrimary;	//	Number of primary lambdas in MC event
	TH1F			*fHistMcNLambda;		//	Number of lambdas in MC event
	TH1F			*fHistMcNAntilambda;	//	Number of antilambdas in MC event
	TH1F			*fHistMcNKshort;		//	Number of K0s in MC event
	TH1F			*fHistMK0;				//	Reconstructed K0 mass for all V0s
	TH1F			*fHistMLa;				//	Reconstructed Lambda mass for all V0s
	TH1F			*fHistMLb;				//	Reconstructed Antilambda mass for all V0s
	TH1F			*fHistNLambda;			//	Number of lambda candidates in peak region per event
	TH1F			*fHistNV0;				//	Number of V0s per event
	TH1F			*fHistPtV0;				//	Transverse momentum distribution of V0s
	TH1F			*fHistPVZ;				//	Distribution of Z coordinate of primary vertex
	TH1F			*fHistTauLa;			//	Distribution of 'lambda' lifetime*c
	TH1F			*fHistV0Z;				//	Z coordinate of V0 decay
	TH1F			*fHistZ;				//	Distance in Z between primary vertex and v0 decay
	TH2F			*fHistBetheBlochTPCNeg; //	TPC response for negative daughters vs momentum
	TH2F			*fHistBetheBlochTPCPos; //	TPC response for positive daughters vs momentum
	TH2F			*fHistImpactxyImpactz;	//	Impact paramater in xy vs z
	TH2F			*fHistMcPMK0Pt;			//	Transverse momentum distribution vs reconstructed K0 mass of primary K0s in MC
	TH2F			*fHistMcPMLaPt;			//	Transverse momentum distribution vs reconstructed Lambda mass of primary Lambda in MC
	TH2F			*fHistMcPMLbPt;			//	Transverse momentum distribution vs reconstructed Antilambd mass of primary Antilambda in MC
	TH2F			*fHistMcV0MK0Pt;		//	Reconstructed K0 mass vs transverse momentum of V0s passing cuts in MC
	TH2F			*fHistMcV0MLaPt;		//	Reconstructed Lambda mass vs transverse momentum of V0s passing cuts in MC
	TH2F			*fHistMcV0MLbPt;		//	Reconstructed Antilambda mass vs transverse momentum of V0s passing cuts in MC
	TH2F			*fHistMK0Pt;			//	Mass of 'K0' vs transverse momentum
	TH2F			*fHistMLaPt;			//	Mass of 'Lambda' vs transverse momentum
	TH2F			*fHistMLbPt;			//	Mass of 'Antilambda' vs transverse momentum
	TH2F			*fHistPtArm;			//	Podolanski-Armenteros plot of V0s
	TH2F			*fHistPtV0Z;			//	Transverse momentum vs Z coordinate of v0 decay
	TH2F			*fHistRZ;				//	Radius vs z of V0 decay
	TH2F			*fHistXZ;				//	X vs z of V0 decay
	TH2F			*fHistYZ;				//	Y vs Z of V0 decay
	
    // NEW HISTO to be declared here
    
    AliAnalysisTaskLukeV0(const AliAnalysisTaskLukeV0&); // not implemented
    AliAnalysisTaskLukeV0& operator=(const AliAnalysisTaskLukeV0&); // not implemented
    
    ClassDef(AliAnalysisTaskLukeV0, 1); // example of analysis
};

#endif

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