Classes for handling Kr cluster finder
[u/mrichter/AliRoot.git] / TPC / AliTPCclustererKr.h
1 #ifndef ALITPCCLUSTERERKR_H
2 #define ALITPCCLUSTERERKR_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id: AliTPCclusterKr.h,v 1.8 2008/02/07 16:07:15 matyja Exp $ */
7
8 //-------------------------------------------------------
9 //                    TPC Kr Cluster Class
10 //
11 //   Origin: Adam Matyja, INP PAN, adam.matyja@ifj.edu.pl
12 //-------------------------------------------------------
13
14 #include "AliTPCclusterKr.h"
15 #include <vector>
16 #include "TObject.h"
17 #include "AliPadMax.h"
18 #include "AliSimDigits.h"
19 #include "AliTPCv4.h"
20 #include "AliTPCParam.h"
21 #include "AliTPCDigitsArray.h"
22 #include "AliTPCvtpr.h"
23 #include "AliTPCClustersRow.h"
24 #include "TTree.h"
25
26 //used in raw data finder
27 #include "AliTPCROC.h"
28 #include "AliTPCCalPad.h"
29 #include "AliTPCAltroMapping.h"
30 #include "AliTPCcalibDB.h"
31 #include "AliTPCRawStream.h"
32 #include "AliTPCRecoParam.h"
33 #include "AliTPCReconstructor.h"
34 #include "AliRawReader.h"
35 #include "AliTPCCalROC.h"
36
37 //_____________________________________________________________________________
38 class AliTPCclustererKr: public TObject{
39 public:
40   AliTPCclustererKr();
41   AliTPCclustererKr(const AliTPCclustererKr &param);//copy constructor
42   AliTPCclustererKr &operator = (const AliTPCclustererKr & param); 
43   ~AliTPCclustererKr();
44
45   //finders
46   Int_t finderIO();//for MC
47   Int_t finderIO(AliRawReader* rawReader);//for data
48   Int_t findClusterKrIO();//main routine for finding clusters
49
50   virtual void SetInput(TTree * tree);  //set input tree with digits    
51   virtual void SetOutput(TTree * tree); //set output tree with clusters
52
53   void SetParam(AliTPCParam *param){fParam=param;}//set TPC parameters
54   void SetDigArr(AliTPCDigitsArray *digarr){fDigarr=digarr;}//set current array of digits
55   void SetRecoParam(AliTPCRecoParam *recoParam=0);//set reconstruction parameters
56   virtual void SetOldRCUFormat(Bool_t rcuFormat = kFALSE)
57     { fIsOldRCUFormat = rcuFormat; };
58
59   Bool_t fRawData; //flague =0 for MC =1 for real data
60   AliTPCClustersRow * fRowCl;  //! current cluster row (used in rootuple fill)
61
62 private:
63   TTree * fInput;   //!input  tree with digits - object not owner
64   TTree * fOutput;   //!output tree with clusters - object not owner
65   AliTPCParam * fParam;//!TPC parameters
66   AliTPCDigitsArray *fDigarr;//! pointer to current array if digits
67
68   //only for raw data :)
69   const AliTPCRecoParam  * fRecoParam;        //! reconstruction parameters
70   Bool_t fIsOldRCUFormat; // assume old RCU raw data format
71   
72
73   ClassDef(AliTPCclustererKr,1)  // Time Projection Chamber Kr clusters
74 };
75
76
77 #endif
78
79