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;
25 class AliPMDRecoParam;
27 class AliPMDClusterFinder : public TObject
32 AliPMDClusterFinder();
33 AliPMDClusterFinder(AliRunLoader* runLoader);
34 AliPMDClusterFinder(const AliPMDClusterFinder &finder); // copy constructor
35 AliPMDClusterFinder &operator=(const AliPMDClusterFinder &finder); // assignment op
36 virtual ~AliPMDClusterFinder();
38 void Digits2RecPoints(TTree *digitsTree, TTree *clustersTree);
39 void Digits2RecPoints(AliRawReader *rawReader, TTree *clustersTree);
41 void AddRecPoint(Int_t idet, Int_t ismn, Float_t * clusdata);
42 void AddRecHit(Int_t celldataX, Int_t celldataY, Int_t celldataTr,
43 Int_t celldataPid, Float_t celldataAdc);
50 void UnLoadClusters();
52 AliPMDCalibData *GetCalibGain() const;
53 AliPMDPedestal *GetCalibPed() const;
54 AliPMDHotData *GetCalibHot() const;
55 AliPMDNoiseCut *GetNoiseCut() 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
64 AliPMDNoiseCut *fNoiseCut; //! Noise cut
66 const AliPMDRecoParam *fRecoParam; // reconstruction parameter
68 TTree *fTreeD; // Digits tree
69 TTree *fTreeR; // Reconstructed points
71 TClonesArray *fDigits; // List of digits
72 TClonesArray *fRecpoints; // List of reconstructed points
73 TClonesArray *fRechits; // List of cells associated with rec points
77 Int_t fDetNo; // Detector Number (0:PRE, 1:CPV)
80 static const Int_t fgkRow = 48; // Total number of rows in one unitmodule
81 static const Int_t fgkCol = 96; // Total number of cols in one unitmodule
82 Double_t fCellADC[fgkRow][fgkCol]; // Array containing individual cell ADC
83 Int_t fCellTrack[fgkRow][fgkCol]; // Array containing individual cell tr
84 Int_t fCellPid[fgkRow][fgkCol]; // Array containing individual cell pid
86 ClassDef(AliPMDClusterFinder,17) // To run PMD clustering