]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PMD/AliPMDClusterFinder.h
Coding conventions, protection against division by 0 (Philippe)
[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;
01709453 23
7e9508a7 24class AliPMDClusterFinder : public TObject
01709453 25{
01709453 26
27 public:
28
7e9508a7 29 AliPMDClusterFinder();
dfaeee5f 30 AliPMDClusterFinder(AliRunLoader* runLoader);
a48edddd 31 AliPMDClusterFinder(const AliPMDClusterFinder &finder); // copy constructor
32 AliPMDClusterFinder &operator=(const AliPMDClusterFinder &finder); // assignment op
01709453 33 virtual ~AliPMDClusterFinder();
34
b208c6a3 35 void Digits2RecPoints(Int_t ievt);
8fbad6d3 36 void Digits2RecPoints(TTree *digitsTree, TTree *clustersTree);
7e9508a7 37 void Digits2RecPoints(AliRawReader *rawReader, TTree *clustersTree);
5f55af10 38 void Digits2RecPoints(Int_t ievt, AliRawReader *rawReader);
b208c6a3 39 void SetCellEdepCut(Float_t ecut);
1758e4fe 40 void AddRecPoint(Int_t idet, Int_t ismn, Float_t * clusdata);
5c5cadd5 41 void AddRecHit(Int_t celldataX, Int_t celldataY);
01709453 42 void ResetCellADC();
43 void ResetRecpoint();
5c5cadd5 44 void ResetRechit();
55601d47 45 void Load();
01b56f5c 46 void LoadClusters();
ebd83c56 47 void UnLoad();
01b56f5c 48 void UnLoadClusters();
b208c6a3 49
35535af7 50 AliPMDCalibData *GetCalibGain() const;
51 AliPMDPedestal *GetCalibPed() const;
09a06455 52
b208c6a3 53 protected:
54 AliRunLoader *fRunLoader; // Pointer to Run Loader
b208c6a3 55 AliLoader *fPMDLoader; // Pointer to specific detector loader
56
35535af7 57 AliPMDCalibData *fCalibGain; //! Gain calibration data
58 AliPMDPedestal *fCalibPed; //! Pedestal calibration data
09a06455 59
b208c6a3 60 TTree *fTreeD; // Digits tree
61 TTree *fTreeR; // Reconstructed points
62
63 TClonesArray *fDigits; // List of digits
64 TClonesArray *fRecpoints; // List of reconstructed points
5c5cadd5 65 TClonesArray *fRechits; // List of cells associated with rec points
b208c6a3 66
67 Int_t fNpoint; //
5c5cadd5 68 Int_t fNhit; //
b208c6a3 69 Int_t fDetNo; // Detector Number (0:PRE, 1:CPV)
b208c6a3 70 Float_t fEcut; // Energy/ADC cut per cell
71
5e6a9312 72 static const Int_t fgkRow = 48; // Total number of rows in one unitmodule
73 static const Int_t fgkCol = 96; // Total number of cols in one unitmodule
74 Double_t fCellADC[fgkRow][fgkCol]; // Array containing individual cell ADC
01709453 75
35535af7 76 ClassDef(AliPMDClusterFinder,12) // To run PMD clustering
01709453 77};
78#endif
79