]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG3/hfe/AliHFEtaggedTrackAnalysis.h
Add fast merging option (Diego)
[u/mrichter/AliRoot.git] / PWG3 / hfe / AliHFEtaggedTrackAnalysis.h
CommitLineData
3a72645a 1/**************************************************************************
2* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3* *
4* Author: The ALICE Off-line Project. *
5* Contributors are mentioned in the code where appropriate. *
6* *
7* Permission to use, copy, modify and distribute this software and its *
8* documentation strictly for non-commercial purposes is hereby granted *
9* without fee, provided that the above copyright notice appears in all *
10* copies and that both the copyright notice and this permission notice *
11* appear in the supporting documentation. The authors make no claims *
12* about the suitability of this software for any purpose. It is *
13* provided "as is" without express or implied warranty. *
14**************************************************************************/
15//
16// Class AliHFEtaggedTrackAnalysis
17// Analyses tracks with an apriori PID information (i.e. using the daugther
18// tracks from well-identified decays of neutral charged particles).
19// More information can be found inside the implementation file.
20//
c2690925 21#ifndef ALIHFETAGGEDTRACKANALYSIS_H
22#define ALIHFETAGGEDTRACKANALYSIS_H
23
24#ifndef ROOT_TNamed
25#include <TNamed.h>
3a72645a 26#endif
27
bf892a6a 28class AliHFEcollection;
3a72645a 29class AliHFEcontainer;
30class AliHFEcuts;
31class AliHFEpid;
32class AliHFEpidQAmanager;
33class AliHFEvarManager;
34
c2690925 35class AliHFEtaggedTrackAnalysis : public TNamed{
3a72645a 36 public:
37 AliHFEtaggedTrackAnalysis();
c2690925 38 AliHFEtaggedTrackAnalysis(const char *name);
3a72645a 39 AliHFEtaggedTrackAnalysis(const AliHFEtaggedTrackAnalysis &ref);
40 AliHFEtaggedTrackAnalysis &operator=(const AliHFEtaggedTrackAnalysis &ref);
41 ~AliHFEtaggedTrackAnalysis();
42
43 void InitContainer();
44 void ProcessTrack(AliVParticle *track, Int_t abinitioPID);
e3ae862b 45
3a72645a 46 AliHFEcontainer *GetContainer() const { return fContainer; }
47 AliHFEpidQAmanager *GetPIDqa() const { return fPIDqa; }
48 TList * GetPIDQA() const;
49 TList * GetCutQA() const;
bf892a6a 50 AliHFEcollection * GetQAcollection() const { return fQAhistos; }
6555e2ad 51 Bool_t GetClean() const { return fClean; };
e156c3bb 52 Bool_t IsPbPb() const { return fIsPbPb; }
53 Bool_t IsPP() const { return !fIsPbPb; }
e3ae862b 54 Double_t GetMagneticField() const { return fMagneticField; };
c2690925 55 AliHFEvarManager *GetVarManager() const { return fVarManager; }
6555e2ad 56
3a72645a 57 void SetCuts(AliHFEcuts *cuts);
58 void SetPID(AliHFEpid *pid);
e156c3bb 59 void SetCentrality(Int_t centrality) { fCentralityF = centrality; };
60 void SetPbPb(){ fIsPbPb = kTRUE; }
61 void SetPP() { fIsPbPb = kFALSE; }
6555e2ad 62 void SetClean(Bool_t clean) { fClean = clean; };
e3ae862b 63 void SetMagneticField(Double_t magneticField) { fMagneticField = magneticField; };
64 void SetVariablesTRD(Bool_t variablesTRD) { fVariablesTRD = variablesTRD; };
3a72645a 65
66 private:
67 enum{
68 kIsOwner = BIT(14),
69 kIsOwnerCuts = BIT(15)
70 };
71 AliHFEvarManager *fVarManager; // Variable Manager
72 AliHFEcontainer *fContainer; // Output container
73 AliHFEpid *fPID; // PID selection
74 AliHFEpidQAmanager *fPIDqa; // PID monitoring
75 AliHFEcuts *fCuts; // Single track cuts
76 AliCFManager *fCFM; // CF Manager used for the track filtering
bf892a6a 77 AliHFEcollection *fQAhistos; // QA histos
e156c3bb 78 Int_t fCentralityF; // Centrality
6555e2ad 79 Bool_t fClean; // Clean
c2690925 80 Double_t fMagneticField; // Magnetic field
e156c3bb 81 Bool_t fVariablesTRD; // Use phi angle at the first plane of the TRD
82 Bool_t fIsPbPb; // Analysis Type: pp or PbPb
3a72645a 83
84 ClassDef(AliHFEtaggedTrackAnalysis, 0)
85};
86#endif