]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIALIGNMENTDATAFILTERITS_H | |
2 | #define ALIALIGNMENTDATAFILTERITS_H | |
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 AliAlignmentDataFilterITS | |
9 | // AliAnalysisTask to extract from ESD tracks the AliTrackPointArrays | |
10 | // with ITS points for selected tracks. This are the input data for alignment | |
11 | // Author: A.Dainese, andrea.dainese@pd.infn.it | |
12 | //************************************************************************* | |
13 | ||
14 | class TTree; | |
15 | class TNtuple; | |
16 | class TList; | |
17 | class TH1F; | |
18 | class TH2F; | |
19 | class TObjString; | |
20 | ||
21 | class AliTrackPointArray; | |
22 | ||
23 | #include <TString.h> | |
24 | #include "AliITSReconstructor.h" | |
25 | #include "AliITSRecoParam.h" | |
26 | #include "AliAnalysisTaskSE.h" | |
27 | ||
28 | class AliAlignmentDataFilterITS : public AliAnalysisTaskSE | |
29 | { | |
30 | public: | |
31 | ||
32 | AliAlignmentDataFilterITS(); | |
33 | AliAlignmentDataFilterITS(const char *name); | |
34 | virtual ~AliAlignmentDataFilterITS(); | |
35 | ||
36 | ||
37 | // Implementation of interface methods | |
38 | virtual void UserCreateOutputObjects(); | |
39 | virtual void UserExec(Option_t *option); | |
40 | virtual void Terminate(Option_t *option); | |
41 | void SetOnlySPDFO(Bool_t set=kTRUE) {fOnlySPDFO=set;} | |
42 | void SetDownsamplelowpt(Bool_t set=kTRUE) {fDownsamplelowpt=set;} | |
43 | void SetGeometryFileName(TString name="geometry.root") {fGeometryFileName=name;} | |
44 | void SetITSRecoParam(AliITSRecoParam *rp) {fITSRecoParam=rp;} | |
45 | static Int_t WriteTrackPointsInIdealGeom(const Char_t *fin="AliTrackPoints.root", | |
46 | const Char_t *fout="AliTrackPoints_IdGeom.root", | |
47 | const Char_t *fmis="Run0_999999999_v3_s0.root", | |
48 | const Char_t *fgeo="geometry.root", | |
49 | Bool_t prn=0); | |
50 | ||
51 | private: | |
52 | ||
53 | void FilterCosmic(const AliESDEvent *esd); | |
54 | void FilterCollision(const AliESDEvent *esd); | |
55 | const AliITSRecoParam *GetRecoParam() const; | |
56 | ||
57 | AliAlignmentDataFilterITS(const AliAlignmentDataFilterITS &); | |
58 | AliAlignmentDataFilterITS& operator=(const AliAlignmentDataFilterITS&); | |
59 | ||
60 | ||
61 | Bool_t fOnlySPDFO; // only SPDtriggered events | |
62 | Bool_t fDownsamplelowpt; // skip part of low pt tracks (only for pp B-on) | |
63 | TString fGeometryFileName; // where to find the geometry.root | |
64 | AliITSRecoParam *fITSRecoParam; // keeps the settings for the filter | |
65 | AliESDEvent *fESD; // ESD object | |
66 | TList *fListOfHistos; //! list of histos: output slot 1 | |
67 | TTree *fspTree; //! output tree with space points: output slot 0 | |
68 | TH1F *fHistNevents; //! output histogram | |
69 | TH1F *fHistNpoints; //! output histogram | |
70 | TH1F *fHistPt; //! output histogram | |
71 | TH2F *fHistLayer0; //! output histogram | |
72 | TH2F *fHistLayer1; //! output histogram | |
73 | TH2F *fHistLayer2; //! output histogram | |
74 | TH2F *fHistLayer3; //! output histogram | |
75 | TH2F *fHistLayer4; //! output histogram | |
76 | TH2F *fHistLayer5; //! output histogram | |
77 | TNtuple *fntExtra; //! output QA ntuple | |
78 | TNtuple *fntCosmicMatching;//! output QA ntuple | |
79 | ||
80 | ClassDef(AliAlignmentDataFilterITS,4); // AliAnalysisTask to extract ITS points for alignment | |
81 | }; | |
82 | ||
83 | #endif | |
84 |