]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG1/AliAlignmentDataFilterITS.h
short description of the package from Naomi's presentation
[u/mrichter/AliRoot.git] / PWG1 / AliAlignmentDataFilterITS.h
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
20 #include <TString.h>
21 #include "AliITSReconstructor.h"
22 #include "AliITSRecoParam.h"
23 #include "AliAnalysisTask.h"
24
25 class AliAlignmentDataFilterITS : public AliAnalysisTask
26 {
27  public:
28
29   AliAlignmentDataFilterITS(const char *name="filterITS");
30   virtual ~AliAlignmentDataFilterITS();
31
32
33   // Implementation of interface methods
34   virtual void ConnectInputData(Option_t *);
35   virtual void CreateOutputObjects();
36   virtual void Init();
37   virtual void LocalInit() {Init();}
38   virtual void Exec(Option_t *option);
39   virtual void Terminate(Option_t *option);
40   void SetOnlySPDFO(Bool_t set=kTRUE) {fOnlySPDFO=set;}
41   void SetGeometryFileName(TString name="geometry.root") {fGeometryFileName=name;}
42   void SetITSRecoParam(AliITSRecoParam *rp) {fITSRecoParam=rp;}
43
44  private:
45
46   void FilterCosmic(const AliESDEvent *esd);
47   void FilterCollision(const AliESDEvent *esd);
48   const AliITSRecoParam *GetRecoParam() const {
49     if(AliITSReconstructor::GetRecoParam()) {
50       return AliITSReconstructor::GetRecoParam();
51     } else if(fITSRecoParam) {
52       return fITSRecoParam;
53     } else return NULL;
54   }
55
56   AliAlignmentDataFilterITS(const AliAlignmentDataFilterITS &);
57   AliAlignmentDataFilterITS& operator=(const AliAlignmentDataFilterITS&);
58
59
60   Bool_t fOnlySPDFO;         // only SPDtriggered events
61   TString fGeometryFileName; // where to find the geometry.root
62   AliITSRecoParam *fITSRecoParam;  // keeps the settings for the filter
63   AliESDEvent  *fESD;        // ESD object
64   AliESDfriend *fESDfriend;  // ESD friend object
65   TList   *fListOfHistos;    //! list of histos: output slot 1
66   TTree   *fspTree;          //! output tree with space points: output slot 0
67   TH1F    *fHistNevents;     //! output histogram
68   TH1F    *fHistNpoints;     //! output histogram
69   TH1F    *fHistPt;          //! output histogram
70   TH2F    *fHistLayer0;      //! output histogram
71   TH2F    *fHistLayer1;      //! output histogram
72   TH2F    *fHistLayer2;      //! output histogram
73   TH2F    *fHistLayer3;      //! output histogram
74   TH2F    *fHistLayer4;      //! output histogram
75   TH2F    *fHistLayer5;      //! output histogram
76   TNtuple *fntExtra;         //! output QA ntuple  
77   TNtuple *fntCosmicMatching;//! output QA ntuple  
78
79   ClassDef(AliAlignmentDataFilterITS,2); // AliAnalysisTask to extract ITS points for alignment
80 };
81
82 #endif
83