]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - PMD/AliPMDClusterFinder.h
Update from Sandun
[u/mrichter/AliRoot.git] / PMD / AliPMDClusterFinder.h
... / ...
CommitLineData
1#ifndef ALIPMDCLUSTERFINDER_H
2#define ALIPMDCLUSTERFINDER_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5//-----------------------------------------------------//
6// //
7// Date : August 05 2003 //
8// This reads the file PMD.digits.root(TreeD), //
9// calls the Clustering algorithm and stores the //
10// clustering output in PMD.RecPoints.root(TreeR) //
11// //
12//-----------------------------------------------------//
13
14class TClonesArray;
15class TFile;
16class TTree;
17
18class AliLoader;
19class AliRunLoader;
20class AliRawReader;
21class AliPMDCalibData;
22class AliPMDPedestal;
23class AliPMDHotData;
24class AliPMDNoiseCut;
25class AliPMDddlinfoData;
26class AliPMDRecoParam;
27
28class AliPMDClusterFinder : public TObject
29{
30
31 public:
32
33 AliPMDClusterFinder();
34 AliPMDClusterFinder(AliRunLoader* runLoader);
35 AliPMDClusterFinder(const AliPMDClusterFinder &finder); // copy constructor
36 AliPMDClusterFinder &operator=(const AliPMDClusterFinder &finder); // assignment op
37 virtual ~AliPMDClusterFinder();
38
39 void Digits2RecPoints(TTree *digitsTree, TTree *clustersTree,Int_t gRecoMode);
40 void Digits2RecPoints(AliRawReader *rawReader, TTree *clustersTree,Int_t gRecoMode);
41
42 void AddRecPoint(Int_t idet, Int_t ismn, Float_t * clusdata);
43 void AddRecHit(Int_t celldataX, Int_t celldataY, Int_t celldataTr,
44 Int_t celldataPid, Float_t celldataAdc);
45 void ResetCellADC();
46 void ResetRecpoint();
47 void ResetRechit();
48 void Load();
49 void LoadClusters();
50 void UnLoad();
51 void UnLoadClusters();
52
53 AliPMDCalibData *GetCalibGain() const;
54 AliPMDPedestal *GetCalibPed() const;
55 AliPMDHotData *GetCalibHot() const;
56 AliPMDNoiseCut *GetNoiseCut() const;
57 AliPMDddlinfoData *GetDdlinfoData() const;
58
59 protected:
60 AliRunLoader *fRunLoader; // Pointer to Run Loader
61 AliLoader *fPMDLoader; // Pointer to specific detector loader
62
63 AliPMDCalibData *fCalibGain; //! Gain calibration data
64 AliPMDPedestal *fCalibPed; //! Pedestal calibration data
65 AliPMDHotData *fCalibHot; //! Hot data
66 AliPMDNoiseCut *fNoiseCut; //! Noise cut
67 AliPMDddlinfoData *fDdlinfo; //! ddl info data
68
69 const AliPMDRecoParam *fRecoParam; // reconstruction parameter
70
71 TTree *fTreeD; // Digits tree
72 TTree *fTreeR; // Reconstructed points
73
74 TClonesArray *fDigits; // List of digits
75 TClonesArray *fRecpoints; // List of reconstructed points
76 TClonesArray *fRechits; // List of cells associated with rec points
77
78 Int_t fNpoint; //
79 Int_t fNhit; //
80 Int_t fDetNo; // Detector Number (0:PRE, 1:CPV)
81
82
83 static const Int_t fgkRow = 48; // Total number of rows in one unitmodule
84 static const Int_t fgkCol = 96; // Total number of cols in one unitmodule
85 Double_t fCellADC[fgkRow][fgkCol]; // Array containing individual cell ADC
86 Int_t fCellTrack[fgkRow][fgkCol]; // Array containing individual cell tr
87 Int_t fCellPid[fgkRow][fgkCol]; // Array containing individual cell pid
88
89 ClassDef(AliPMDClusterFinder,19) // 19 by satyajit
90};
91#endif
92