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 //-----------------------------------------------------//
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) //
12 //-----------------------------------------------------//
21 class AliPMDCalibData;
24 class AliPMDClusterFinder : public TObject
29 AliPMDClusterFinder();
30 AliPMDClusterFinder(AliRunLoader* runLoader);
31 AliPMDClusterFinder(const AliPMDClusterFinder &finder); // copy constructor
32 AliPMDClusterFinder &operator=(const AliPMDClusterFinder &finder); // assignment op
33 virtual ~AliPMDClusterFinder();
35 void Digits2RecPoints(Int_t ievt);
36 void Digits2RecPoints(TTree *digitsTree, TTree *clustersTree);
37 void Digits2RecPoints(AliRawReader *rawReader, TTree *clustersTree);
38 void Digits2RecPoints(Int_t ievt, AliRawReader *rawReader);
39 void SetCellEdepCut(Float_t ecut);
40 void AddRecPoint(Int_t idet, Int_t ismn, Float_t * clusdata);
41 void AddRecHit(Int_t celldataX, Int_t celldataY, Int_t celldataTr,
49 void UnLoadClusters();
51 AliPMDCalibData *GetCalibGain() const;
52 AliPMDPedestal *GetCalibPed() const;
55 AliRunLoader *fRunLoader; // Pointer to Run Loader
56 AliLoader *fPMDLoader; // Pointer to specific detector loader
58 AliPMDCalibData *fCalibGain; //! Gain calibration data
59 AliPMDPedestal *fCalibPed; //! Pedestal calibration data
61 TTree *fTreeD; // Digits tree
62 TTree *fTreeR; // Reconstructed points
64 TClonesArray *fDigits; // List of digits
65 TClonesArray *fRecpoints; // List of reconstructed points
66 TClonesArray *fRechits; // List of cells associated with rec points
70 Int_t fDetNo; // Detector Number (0:PRE, 1:CPV)
71 Float_t fEcut; // Energy/ADC cut per cell
73 static const Int_t fgkRow = 48; // Total number of rows in one unitmodule
74 static const Int_t fgkCol = 96; // Total number of cols in one unitmodule
75 Double_t fCellADC[fgkRow][fgkCol]; // Array containing individual cell ADC
76 Int_t fCellTrack[fgkRow][fgkCol]; // Array containing individual cell tr
77 Int_t fCellPid[fgkRow][fgkCol]; // Array containing individual cell pid
79 ClassDef(AliPMDClusterFinder,13) // To run PMD clustering