]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/JetTasks/AliAnalyseLeadingTrackUE.h
added option for variable binning depending on the dataset for high pt QA and spectra...
[u/mrichter/AliRoot.git] / PWG4 / JetTasks / AliAnalyseLeadingTrackUE.h
CommitLineData
a75aacd6 1//-*- Mode: C++ -*-
2#ifndef ALIANALYSELEADINGTRACKUE_H
3#define ALIANALYSELEADINGTRACKUE_H
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7////////////////////////////////////////////////
8//---------------------------------------------
9// Class for transverse regions analysis w.r.t leading track
10//---------------------------------------------
11////////////////////////////////////////////////
12
13// --- ROOT system ---
14#include <TObject.h>
15
16class AliAODEvent;
17class AliESDEvent;
18class AliAODTrack;
19class AliESDTrack;
20class AliGenPythiaEventHeader;
21class AliInputEventHandler;
22class AliMCEvent;
23class AliStack;
24class AliVParticle;
25class TClonesArray;
26class TObject;
27class TVector3;
28
29class AliAnalyseLeadingTrackUE : public TObject {
30
31 public:
32
33 AliAnalyseLeadingTrackUE(); //constructor
34 AliAnalyseLeadingTrackUE(const AliAnalyseLeadingTrackUE & g); //copy constructor
35 AliAnalyseLeadingTrackUE & operator = (const AliAnalyseLeadingTrackUE & g); //assignment operator
36 virtual ~AliAnalyseLeadingTrackUE(); //virtual destructor
37
38 // Setters
39 void SetParticleSelectionCriteria(Int_t filterbit, Bool_t onlyhadrons, Double_t etacut) { fFilterBit = filterbit;
40 fOnlyHadrons = onlyhadrons;
41 fTrackEtaCut = etacut; }
42 void SetDebug(Int_t debug) { fDebug = debug; }
43 Bool_t ApplyCuts(TObject* track, Int_t filterbit); // Reproduces the cuts of the corresponding bit in the ESD->AOD filtering
44 TObjArray* FindLeadingObjects(TObject* obj); // Looks for leading track or MC particle
45 TObjArray* GetMinMaxRegion(TList* transv1, TList* transv2); // Sorts the transverse regions in MIN and MAX
46 Int_t NParticles(TObject *obj); // Counts tracks or MC particles
47 AliVParticle* ParticleWithCuts(TObject* obj, Int_t ipart, Bool_t onlyprimaries = kTRUE ); // Returns track or MC particle at position "ipart" if passes selection criteria
48 void QSortTracks(TObjArray &a, Int_t first, Int_t last); // Sort by pT an array of AliVParticles
49 TObjArray* SortRegions(const AliVParticle* leading, TObject* obj, TObject* arrayMC, Bool_t onlyprimaries = kTRUE); // Assign particles to towards, away or transverse regions
50 Bool_t TriggerSelection(const TObject* obj); // Select good triggers with AliPhysicsSelection class
51 Bool_t VertexSelection(const TObject* obj, Int_t ntracks, Double_t zed); // Vertex selection: see implementation
52
53 private:
54 Int_t fDebug; // debug flag
55 Int_t fFilterBit; // track selection cuts
56 Bool_t fOnlyHadrons; // consider only charged Pions, Protons and Kaons
57 Double_t fTrackEtaCut; // pseudo-rapidity limit of transverse regions
58 ClassDef(AliAnalyseLeadingTrackUE,0)
59};
60#endif