]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PMD/AliPMDClusterFinder.h
sdigits reading macro cleaned up
[u/mrichter/AliRoot.git] / PMD / AliPMDClusterFinder.h
CommitLineData
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 14class TClonesArray;
15class TFile;
01709453 16class TTree;
01709453 17
18class AliLoader;
19class AliRunLoader;
5f55af10 20class AliRawReader;
09a06455 21class AliPMDCalibData;
35535af7 22class AliPMDPedestal;
b9e2f33c 23class AliPMDRecoParam;
01709453 24
7e9508a7 25class 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