]>
Commit | Line | Data |
---|---|---|
b208c6a3 | 1 | #ifndef ALIPMDCLUSTERFINDER_H |
2 | #define ALIPMDCLUSTERFINDER_H | |
ed228cbc | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
01709453 | 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 | ||
01709453 | 14 | class TClonesArray; |
15 | class TFile; | |
01709453 | 16 | class TTree; |
01709453 | 17 | |
18 | class AliLoader; | |
19 | class AliRunLoader; | |
5f55af10 | 20 | class AliRawReader; |
09a06455 | 21 | class AliPMDCalibData; |
35535af7 | 22 | class AliPMDPedestal; |
b9e2f33c | 23 | class AliPMDRecoParam; |
01709453 | 24 | |
7e9508a7 | 25 | class AliPMDClusterFinder : public TObject |
01709453 | 26 | { |
01709453 | 27 | |
28 | public: | |
29 | ||
7e9508a7 | 30 | AliPMDClusterFinder(); |
dfaeee5f | 31 | AliPMDClusterFinder(AliRunLoader* runLoader); |
a48edddd | 32 | AliPMDClusterFinder(const AliPMDClusterFinder &finder); // copy constructor |
33 | AliPMDClusterFinder &operator=(const AliPMDClusterFinder &finder); // assignment op | |
01709453 | 34 | virtual ~AliPMDClusterFinder(); |
35 | ||
b208c6a3 | 36 | void Digits2RecPoints(Int_t ievt); |
8fbad6d3 | 37 | void Digits2RecPoints(TTree *digitsTree, TTree *clustersTree); |
7e9508a7 | 38 | void Digits2RecPoints(AliRawReader *rawReader, TTree *clustersTree); |
5f55af10 | 39 | void Digits2RecPoints(Int_t ievt, AliRawReader *rawReader); |
b208c6a3 | 40 | void SetCellEdepCut(Float_t ecut); |
1758e4fe | 41 | void AddRecPoint(Int_t idet, Int_t ismn, Float_t * clusdata); |
920e13db | 42 | void AddRecHit(Int_t celldataX, Int_t celldataY, Int_t celldataTr, |
b0e4d1e1 | 43 | Int_t celldataPid, Float_t celldataAdc); |
01709453 | 44 | void ResetCellADC(); |
45 | void ResetRecpoint(); | |
5c5cadd5 | 46 | void ResetRechit(); |
55601d47 | 47 | void Load(); |
01b56f5c | 48 | void LoadClusters(); |
ebd83c56 | 49 | void UnLoad(); |
01b56f5c | 50 | void UnLoadClusters(); |
b208c6a3 | 51 | |
35535af7 | 52 | AliPMDCalibData *GetCalibGain() const; |
53 | AliPMDPedestal *GetCalibPed() const; | |
09a06455 | 54 | |
b208c6a3 | 55 | protected: |
56 | AliRunLoader *fRunLoader; // Pointer to Run Loader | |
b208c6a3 | 57 | AliLoader *fPMDLoader; // Pointer to specific detector loader |
58 | ||
35535af7 | 59 | AliPMDCalibData *fCalibGain; //! Gain calibration data |
60 | AliPMDPedestal *fCalibPed; //! Pedestal calibration data | |
09a06455 | 61 | |
b9e2f33c | 62 | const AliPMDRecoParam *fRecoParam; // reconstruction parameter |
63 | ||
b208c6a3 | 64 | TTree *fTreeD; // Digits tree |
65 | TTree *fTreeR; // Reconstructed points | |
66 | ||
67 | TClonesArray *fDigits; // List of digits | |
68 | TClonesArray *fRecpoints; // List of reconstructed points | |
5c5cadd5 | 69 | TClonesArray *fRechits; // List of cells associated with rec points |
b208c6a3 | 70 | |
71 | Int_t fNpoint; // | |
5c5cadd5 | 72 | Int_t fNhit; // |
b208c6a3 | 73 | Int_t fDetNo; // Detector Number (0:PRE, 1:CPV) |
b208c6a3 | 74 | Float_t fEcut; // Energy/ADC cut per cell |
75 | ||
5e6a9312 | 76 | static const Int_t fgkRow = 48; // Total number of rows in one unitmodule |
77 | static const Int_t fgkCol = 96; // Total number of cols in one unitmodule | |
78 | Double_t fCellADC[fgkRow][fgkCol]; // Array containing individual cell ADC | |
920e13db | 79 | Int_t fCellTrack[fgkRow][fgkCol]; // Array containing individual cell tr |
80 | Int_t fCellPid[fgkRow][fgkCol]; // Array containing individual cell pid | |
01709453 | 81 | |
b9e2f33c | 82 | ClassDef(AliPMDClusterFinder,15) // To run PMD clustering |
01709453 | 83 | }; |
84 | #endif | |
85 |