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 AliPMDRecoParam;
26 class AliPMDClusterFinder : public TObject
31 AliPMDClusterFinder();
32 AliPMDClusterFinder(AliRunLoader* runLoader);
33 AliPMDClusterFinder(const AliPMDClusterFinder &finder); // copy constructor
34 AliPMDClusterFinder &operator=(const AliPMDClusterFinder &finder); // assignment op
35 virtual ~AliPMDClusterFinder();
37 void Digits2RecPoints(Int_t ievt);
38 void Digits2RecPoints(TTree *digitsTree, TTree *clustersTree);
39 void Digits2RecPoints(AliRawReader *rawReader, TTree *clustersTree);
40 void Digits2RecPoints(Int_t ievt, AliRawReader *rawReader);
41 void SetCellEdepCut(Float_t ecut);
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);
51 void UnLoadClusters();
53 AliPMDCalibData *GetCalibGain() const;
54 AliPMDPedestal *GetCalibPed() const;
55 AliPMDHotData *GetCalibHot() const;
58 AliRunLoader *fRunLoader; // Pointer to Run Loader
59 AliLoader *fPMDLoader; // Pointer to specific detector loader
61 AliPMDCalibData *fCalibGain; //! Gain calibration data
62 AliPMDPedestal *fCalibPed; //! Pedestal calibration data
63 AliPMDHotData *fCalibHot; //! Hot data
65 const AliPMDRecoParam *fRecoParam; // reconstruction parameter
67 TTree *fTreeD; // Digits tree
68 TTree *fTreeR; // Reconstructed points
70 TClonesArray *fDigits; // List of digits
71 TClonesArray *fRecpoints; // List of reconstructed points
72 TClonesArray *fRechits; // List of cells associated with rec points
76 Int_t fDetNo; // Detector Number (0:PRE, 1:CPV)
77 Float_t fEcut; // Energy/ADC cut per cell
79 static const Int_t fgkRow = 48; // Total number of rows in one unitmodule
80 static const Int_t fgkCol = 96; // Total number of cols in one unitmodule
81 Double_t fCellADC[fgkRow][fgkCol]; // Array containing individual cell ADC
82 Int_t fCellTrack[fgkRow][fgkCol]; // Array containing individual cell tr
83 Int_t fCellPid[fgkRow][fgkCol]; // Array containing individual cell pid
85 ClassDef(AliPMDClusterFinder,16) // To run PMD clustering