q vector from loop on stack
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / MultEvShape / AliAnalysisCentralCutEvtESD.h
CommitLineData
8a993eac 1#ifndef ALIANALYSISCENTRALCUTEVTESD_H
2#define ALIANALYSISCENTRALCUTEVTESD_H
410ff8cc 3
bde49c8a 4/*
5 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved.
6 * See cxx source for full Copyright notice
7 * $Id$
8 */
9
410ff8cc 10// ---------------------------------------------------
11// ESD event level cuts for azimuthal isotropic
12// expansion in highly central collisions analysis
13// author: Cristian Andrei
14// acristian@niham.nipne.ro
15// --------------------------------------------------
16
bde49c8a 17
18#include "AliAnalysisCuts.h"
19
410ff8cc 20
bde49c8a 21class TObject;
22class TObjArray;
23class TList;
24
25class AliESDEvent;
26
410ff8cc 27
bde49c8a 28class AliAnalysisCentralCutEvtESD: public AliAnalysisCuts {
29public:
30 AliAnalysisCentralCutEvtESD(const char *name="AliAnalysisCentralCutEvtESD", const char *title="ESD_Event_cuts");
31 virtual ~AliAnalysisCentralCutEvtESD();
32
9eeae5d5 33 Bool_t IsSelected(TObject* obj);
34 Bool_t IsSelected(TList* /*list*/) {return kTRUE;}
bde49c8a 35
36 void SetMultiplicityRange(Int_t r1 = 0, Int_t r2 = 1000000) {fReqMult = kTRUE; fMultMin = r1; fMultMax = r2;}
37 void SetDirectivityRange(Double_t r1 = 0.0, Double_t r2 = 1e10) {fReqDir = kTRUE; fDirMin = r1; fDirMax = r2;}
38 void SetSPDMultiplicityRange(Int_t r1 = 0, Int_t r2 = 1000000) {fReqSPDMult = kTRUE; fSPDMultMin = r1; fSPDMultMax = r2;}
39 void SetSPDDirectivityRange(Double_t r1 = 0.0, Double_t r2 = 1e10) {fReqSPDDir = kTRUE; fSPDDirMin = r1; fSPDDirMax = r2;}
40
41private:
42 AliAnalysisCentralCutEvtESD(const AliAnalysisCentralCutEvtESD& ref);
43 AliAnalysisCentralCutEvtESD& operator=(const AliAnalysisCentralCutEvtESD& ref);
44
45 Bool_t fReqMult, fReqDir, fReqSPDMult, fReqSPDDir; //set whether to compute multiplicity, directivity or dir unity
46 Double_t fMultMin, fMultMax; //stores the multiplicity cut interval
47 Double_t fDirMin, fDirMax; //stores the directivity cut interval
48 Double_t fSPDMultMin, fSPDMultMax; //stores the SPD multiplicity cut interval
49 Double_t fSPDDirMin, fSPDDirMax; //stores the directivity unity cut interval
50
51 TObjArray *fCutsList[10]; //list containing the cuts
52
53 void InitCuts(); //used to initialize the cuts
54
55 Bool_t CheckIntCuts(Int_t no, TObject *obj) const; //used to check if a track/particle is selected
56
57 Int_t CalcMult(AliESDEvent* const esdEv);
58 Double_t CalcDir(AliESDEvent* const esdEv);
59 Int_t CalcSPDMult(AliESDEvent* const esdEv);
60 Double_t CalcSPDDir(AliESDEvent* const esdEv);
61
62 ClassDef(AliAnalysisCentralCutEvtESD, 1);
63};
64
65#endif