]>
Commit | Line | Data |
---|---|---|
388ca814 | 1 | #ifndef AliAnalysisTaskVertexESD_cxx |
2 | #define AliAnalysisTaskVertexESD_cxx | |
3 | ||
4 | /* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | //************************************************************************* | |
8 | // Class AliAnalysisTaskVertexESD | |
9 | // AliAnalysisTask to extract from ESD the information for the analysis | |
10 | // of the primary vertex reconstruction efficiency and resolution | |
11 | // (for MC events) and distributions (for real data). Three vertices: | |
12 | // - SPD tracklets | |
13 | // - ITS+TPC tracks | |
14 | // - TPC-only tracks | |
15 | // | |
16 | // Author: A.Dainese, andrea.dainese@pd.infn.it | |
17 | //************************************************************************* | |
18 | ||
19 | class TNtuple; | |
8e74e9cf | 20 | class TH1F; |
388ca814 | 21 | class TH2F; |
22 | class AliESDEvent; | |
388ca814 | 23 | class AliESDVertex; |
24 | ||
25 | #include "AliAnalysisTask.h" | |
26 | ||
27 | class AliAnalysisTaskVertexESD : public AliAnalysisTask | |
28 | { | |
29 | public: | |
30 | ||
31 | AliAnalysisTaskVertexESD(const char *name = "AliAnalysisTaskVertexESD"); | |
32 | virtual ~AliAnalysisTaskVertexESD(); | |
33 | ||
34 | virtual void ConnectInputData(Option_t *); | |
35 | virtual void CreateOutputObjects(); | |
36 | virtual void Exec(Option_t *option); | |
37 | virtual void Terminate(Option_t *); | |
38 | Bool_t GetReadMC() const { return fReadMC; } | |
39 | void SetReadMC(Bool_t flag=kTRUE) { fReadMC=flag; } | |
fb5f0fd9 | 40 | void SetRerecoVertexTPC(Bool_t flag=kTRUE) { fRecoVtxTPC=flag; } |
41 | void SetRerecoVertexITSTPC(Bool_t flag=kTRUE) { fRecoVtxITSTPC=flag; } | |
388ca814 | 42 | |
43 | protected: | |
44 | Bool_t fReadMC; // read Monte Carlo | |
94f15f9b | 45 | Bool_t fRecoVtxTPC; // reco TPC vertex on the flight |
46 | Bool_t fRecoVtxITSTPC; // reco ITS+TPC vertex on the flight | |
388ca814 | 47 | AliESDEvent *fESD; // ESD object |
388ca814 | 48 | TList *fOutput; //! list send on output slot 0 |
49 | TNtuple *fNtupleVertexESD;//! output ntuple | |
388ca814 | 50 | TH2F *fhTrackRefs; //! output histo |
8e74e9cf | 51 | TH1F *fhVtxTPCx; //! output histo |
52 | TH1F *fhVtxTPCy; //! output histo | |
53 | TH1F *fhVtxTPCz; //! output histo | |
54 | TH1F *fhVtxTRKx; //! output histo | |
55 | TH1F *fhVtxTRKy; //! output histo | |
56 | TH1F *fhVtxTRKz; //! output histo | |
57 | TH1F *fhVtxSPDx; //! output histo | |
58 | TH1F *fhVtxSPDy; //! output histo | |
59 | TH1F *fhVtxSPDz3D; //! output histo | |
60 | TH1F *fhVtxSPDzZ; //! output histo | |
61 | TH2F *fhVtxTPCvsSPDx; //! output histo | |
62 | TH2F *fhVtxTPCvsSPDy; //! output histo | |
63 | TH2F *fhVtxTPCvsSPDz; //! output histo | |
64 | TH2F *fhVtxTRKvsSPDx; //! output histo | |
65 | TH2F *fhVtxTRKvsSPDy; //! output histo | |
66 | TH2F *fhVtxTRKvsSPDz; //! output histo | |
67 | TH2F *fhVtxSPDContrvsMult; //! output histo | |
68 | TH2F *fhVtxTRKContrvsTrks56; //! output histo | |
69 | TH2F *fhVtxTPCContrvsTrks; //! output histo | |
388ca814 | 70 | |
71 | private: | |
72 | ||
73 | AliAnalysisTaskVertexESD(const AliAnalysisTaskVertexESD&); // not implemented | |
74 | AliAnalysisTaskVertexESD& operator=(const AliAnalysisTaskVertexESD&); // not implemented | |
97805f7d | 75 | AliESDVertex* ReconstructPrimaryVertexTPC() const; |
94f15f9b | 76 | AliESDVertex* ReconstructPrimaryVertexITSTPC() const; |
388ca814 | 77 | |
8e74e9cf | 78 | ClassDef(AliAnalysisTaskVertexESD,3); // primary vertex analysis |
388ca814 | 79 | }; |
80 | ||
81 | #endif |