]>
Commit | Line | Data |
---|---|---|
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 | ||
14 | class TClonesArray; | |
15 | class TFile; | |
16 | class TTree; | |
17 | ||
18 | class AliLoader; | |
19 | class AliRunLoader; | |
20 | class AliRawReader; | |
21 | class AliPMDCalibData; | |
22 | class AliPMDPedestal; | |
23 | class AliPMDHotData; | |
24 | class AliPMDNoiseCut; | |
25 | class AliPMDddlinfoData; | |
26 | class AliPMDRecoParam; | |
27 | ||
28 | class 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 |