]>
Commit | Line | Data |
---|---|---|
cd785861 | 1 | // $Id$ |
2 | //* This file is property of and copyright by the ALICE HLT Project * | |
3 | //* ALICE Experiment at CERN, All rights reserved. * | |
4 | //* See cxx source for full Copyright notice * | |
5 | ||
6 | #ifndef ALIANALYSISTASKD0TRIGGER_H | |
7 | #define ALIANALYSISTASKD0TRIGGER_H | |
8 | ||
9 | ||
10 | /** @file AliAnalysisTaskD0Trigger.h | |
11 | @author Gaute Ovrebekk | |
12 | @date | |
13 | @brief An analysis task for the D0 Trigger | |
14 | */ | |
15 | ||
16 | class TH1F; | |
17 | class TList; | |
18 | class TObjArray; | |
19 | class AliESDVertex; | |
20 | class AliExternalTrackParam; | |
21 | class AliAODVertex; | |
22 | ||
23 | #include "AliAnalysisTaskSE.h" | |
24 | #include <vector> | |
25 | ||
26 | class AliAnalysisTaskD0Trigger : public AliAnalysisTaskSE { | |
27 | ||
28 | public: | |
29 | AliAnalysisTaskD0Trigger(); | |
30 | AliAnalysisTaskD0Trigger(const char *name,float cuts[7]); | |
31 | virtual ~AliAnalysisTaskD0Trigger() {} | |
32 | virtual void UserCreateOutputObjects(); | |
33 | virtual void UserExec(Option_t *option); | |
34 | virtual void Terminate(Option_t *); | |
35 | virtual void NotifyRun(); | |
36 | ||
37 | private: | |
38 | /** copy constructor */ | |
39 | AliAnalysisTaskD0Trigger(const AliAnalysisTaskD0Trigger&); | |
40 | /** assignment operator */ | |
41 | AliAnalysisTaskD0Trigger& operator=(const AliAnalysisTaskD0Trigger&); | |
42 | ||
43 | TList *fOutputList; // list of output histograms | |
44 | ||
45 | void SingleTrackSelect(AliExternalTrackParam*, AliESDVertex*); | |
46 | void RecD0(Int_t&,AliESDVertex *,bool); | |
47 | ||
48 | //from AliD0toKpi | |
49 | Double_t InvMass(AliExternalTrackParam* d1, AliExternalTrackParam* d2); | |
50 | void cosThetaStar(AliExternalTrackParam* n, AliExternalTrackParam* p,Double_t &D0,Double_t &D0bar); | |
51 | Double_t pointingAngle(AliExternalTrackParam* n, AliExternalTrackParam* p, Double_t *pv, Double_t *sv); | |
52 | Double_t Pt(AliExternalTrackParam* d1, AliExternalTrackParam* d2); | |
53 | AliAODVertex* ReconstructSecondaryVertex(TObjArray *trkArray, Double_t b, const AliESDVertex *v, bool useKF); | |
54 | ||
55 | /// pt cut for decay, minimum [GeV/c] | |
56 | float fPtMin; | |
57 | /// Distance between decay tracks [cm] ?? | |
58 | float fdca; | |
59 | /// Inv. mass half width [GeV] | |
60 | float finvMass; | |
61 | /// Decay angle | |
62 | float fcosThetaStar; | |
63 | /// Distance from primary vertex for decay tracks [cm] | |
64 | float fd0; | |
65 | /// Product of d0 for the two decay tracks [cm^2] | |
66 | float fd0d0; | |
67 | /// Pionting angle | |
68 | float fcosPoint; | |
69 | ||
70 | Double_t mD0PDG; | |
71 | ||
72 | /// D0 inv. mass plot | |
73 | TH1F *fD0massHLT; | |
74 | TH1F *fD0ptHLT; | |
75 | TH1F *fD0massOFF; | |
76 | TH1F *fD0ptOFF; | |
77 | ||
78 | vector<AliExternalTrackParam*> fPos; | |
79 | vector<AliExternalTrackParam*> fNeg; | |
80 | ||
81 | TObjArray *ftwoTrackArray; | |
82 | ||
83 | Int_t fTotalD0HLT; | |
84 | Int_t fTotalD0OFF; | |
85 | Double_t fField; | |
86 | ||
87 | Int_t fNevents; | |
88 | ||
89 | bool fuseKF; | |
90 | ||
91 | /// the default configuration entry for this component | |
92 | static const char* fgkOCDBEntry; //!transient | |
93 | ||
94 | ClassDef(AliAnalysisTaskD0Trigger, 1); | |
95 | ||
96 | }; | |
97 | ||
98 | #endif |