1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
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 **************************************************************************/
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.
21 #ifndef ALIHFETAGGEDTRACKANALYSIS_H
22 #define ALIHFETAGGEDTRACKANALYSIS_H
28 class AliHFEcollection;
29 class AliHFEcontainer;
32 class AliHFEpidQAmanager;
33 class AliHFEvarManager;
35 class AliHFEtaggedTrackAnalysis : public TNamed{
37 AliHFEtaggedTrackAnalysis();
38 AliHFEtaggedTrackAnalysis(const char *name);
39 AliHFEtaggedTrackAnalysis(const AliHFEtaggedTrackAnalysis &ref);
40 AliHFEtaggedTrackAnalysis &operator=(const AliHFEtaggedTrackAnalysis &ref);
41 ~AliHFEtaggedTrackAnalysis();
44 void ProcessTrack(AliVParticle *track, Int_t abinitioPID);
46 AliHFEcontainer *GetContainer() const { return fContainer; }
47 AliHFEpidQAmanager *GetPIDqa() const { return fPIDqa; }
48 TList * GetPIDQA() const;
49 TList * GetCutQA() const;
50 AliHFEcollection * GetQAcollection() const { return fQAhistos; }
51 Bool_t GetClean() const { return fClean; };
52 Bool_t IsPbPb() const { return fIsPbPb; }
53 Bool_t IsPP() const { return !fIsPbPb; }
54 Double_t GetMagneticField() const { return fMagneticField; };
55 AliHFEvarManager *GetVarManager() const { return fVarManager; }
57 void SetCuts(AliHFEcuts *cuts);
58 void SetPID(AliHFEpid *pid);
59 void SetCentrality(Int_t centrality) { fCentralityF = centrality; };
60 void SetPbPb(){ fIsPbPb = kTRUE; }
61 void SetPP() { fIsPbPb = kFALSE; }
62 void SetClean(Bool_t clean) { fClean = clean; };
63 void SetMagneticField(Double_t magneticField) { fMagneticField = magneticField; };
64 void SetVariablesTRD(Bool_t variablesTRD) { fVariablesTRD = variablesTRD; };
69 kIsOwnerCuts = BIT(15)
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
77 AliHFEcollection *fQAhistos; // QA histos
78 Int_t fCentralityF; // Centrality
79 Bool_t fClean; // Clean
80 Double_t fMagneticField; // Magnetic field
81 Bool_t fVariablesTRD; // Use phi angle at the first plane of the TRD
82 Bool_t fIsPbPb; // Analysis Type: pp or PbPb
84 ClassDef(AliHFEtaggedTrackAnalysis, 0)