AliPhysics  9b6b435 (9b6b435)
AliConversionTrackCuts.h
Go to the documentation of this file.
1 #ifndef ALICONVERSIONTRACKCUTS_H
2 #define ALICONVERSIONTRACKCUTS_H
3 
4 // Class handling all kinds of selection cuts for Gamma Conversion analysis
5 // Authors: (this code is mostly copied from AliRsnTrackQuality) adapted by Svein Lindal *
6 
7 class TH2F;
8 class AliESDtrackCuts;
9 class TList;
10 class AliVEvent;
11 class THn;
12 #include "AliAODTrack.h"
13 #include "AliESDtrack.h"
14 #include "AliAnalysisCuts.h"
15 
16 using namespace std;
17 
18 class AliConversionTrackCuts : public AliAnalysisCuts {
19 
20 public:
21 
22  enum CTCuts_t {
23  kPreCut = 0,
31  kNCuts
32  };
33 
34  // enum trackVal {
35  // kPt = 0,
36  // kPhi,
37  // kEta,
38  // kNVar
39  // };
40  static const char * fgkCutNames[kNCuts];
41 
42  Bool_t IsSelected(TObject * object );
43  Bool_t IsSelected(TList * /*list*/) { return kFALSE; }
44  Bool_t AcceptTrack(const AliAODTrack * track);
45  Bool_t AcceptTrack(const AliESDtrack * track);
46  Bool_t GetDCA(const AliAODTrack * track, Double_t dca[2]);
47  Bool_t GetDCA(const AliESDtrack * track, Double_t dca[2]);
48 
49 
50  void FillDCAHist(Float_t dcaz, Float_t dcaxy, const AliVTrack * track);
54 
55  void SetEsdTrackCuts(AliESDtrackCuts * trackcuts) { fEsdTrackCuts = trackcuts; }
56  void SetDCAZmax(Double_t value) { fDCAZmax = value*value; }
57  void SetDCAXYmax(Double_t value) { fDCAXYmax = value*value; }
58  void SetFilterBit(Int_t value) { fFilterBit = value; }
59  void SetEvent(AliVEvent * event) { fEvent = event; }
60  void CreateTrackEff(Bool_t create = kTRUE) { fkCreateTrackEff = create; }
61 
62  TList * CreateHistograms();
63  void FillHistograms(Int_t cutIndex, const AliVTrack * track);
64  virtual void Print(const Option_t *option = "") const;
65 
66 protected :
67 
68  void DefineESDCuts();
69 
70 
71  AliESDtrackCuts * fEsdTrackCuts; //main cut
72  AliESDtrackCuts * fEsdTrackCutsExtra1; //global tracks cut
73  AliESDtrackCuts * fEsdTrackCutsExtra2; //others
74 
75  AliVEvent * fEvent;
76 
77 
78 
80 
81  Double_t fDCAZmax; // maximum value for longitudinal DCA
82  Double_t fDCAXYmax; // maximum xy value for dca
83 
85 
87  //TH2F * fhPt;
88  //TH2F * fhPhiPt;
95  THn * fhTrackEff;
97 
99 
100  AliConversionTrackCuts(const AliConversionTrackCuts&); // not implemented
101  AliConversionTrackCuts& operator=(const AliConversionTrackCuts&); // not implemented
102 
103  ClassDef(AliConversionTrackCuts,5)
104 };
105 
106 #endif
void Print(std::ostream &o, const char *name, Double_t dT, Double_t dVM, Double_t alldT, Double_t alldVM)
Definition: PlotSysInfo.C:121
double Double_t
Definition: External.C:58
Definition: External.C:236
const char * title
Definition: MakeQAPdf.C:27
void SetDCAXYmax(Double_t value)
AliESDtrackCuts * fEsdTrackCuts
int Int_t
Definition: External.C:63
float Float_t
Definition: External.C:68
void SetEsdTrackCuts(AliESDtrackCuts *trackcuts)
void SetFilterBit(Int_t value)
void CreateTrackEff(Bool_t create=kTRUE)
AliESDtrackCuts * fEsdTrackCutsExtra2
const char Option_t
Definition: External.C:48
bool Bool_t
Definition: External.C:53
void SetEvent(AliVEvent *event)
AliESDtrackCuts * fEsdTrackCutsExtra1
void SetDCAZmax(Double_t value)