Bug fix. The equippment ID was not given to alirawreader
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSClusterizer.h
CommitLineData
aac22523 1
2
3#ifndef ALIHLTPHOSCLUSTERIZER
4#define ALIHLTPHOSCLUSTERIZER
5
6/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
7 * See cxx source for full Copyright notice */
8
9/** @file AliHLTPHOSClusterizer.h
10 @author Øystein Djuvsland
11 @date
12 @brief A temporary clusterizer for PHOS
13*/
14
15
16#include "AliHLTPHOSCommonDefs.h"
17#include "AliHLTPHOSRcuCellEnergyDataStruct.h"
18#include "AliHLTPHOSClusterDataStruct.h"
19#include "AliHLTPHOSRecPointDataStruct.h"
20#include "AliHLTPHOSValidCellDataStruct.h"
21#include "AliHLTPHOSRecPointListDataStruct.h"
22
23class AliHLTPHOSClusterizer
24{
25
26 public:
27
28 AliHLTPHOSClusterizer();
29 virtual ~AliHLTPHOSClusterizer();
30 AliHLTPHOSClusterizer(const AliHLTPHOSClusterizer &);
31 AliHLTPHOSClusterizer & operator = (const AliHLTPHOSClusterizer &) {return *this;}
32
33 void SetThreshold(Float_t threshold) {fThreshold = threshold;}
34 void SetClusterThreshold(Float_t clusterThreshold) {fClusterThreshold = clusterThreshold;}
35
36 void SetHighGainFactor(Float_t highGain) {fHighGainFactor = highGain;}
37 void SetLowGainFactor(Float_t lowGain) {fLowGainFactor = lowGain;}
38 void SetArraySize(Int_t size)
39 {
40 fArraySize = size;
41 fMultiplicity = fArraySize * fArraySize;
42 }
43
44 Float_t GetHighGainFactor() {return fHighGainFactor;}
45 Float_t GetLowGainFactor() {return fLowGainFactor;}
46
47 Int_t BuildCellEnergyArray(AliHLTPHOSRcuCellEnergyDataStruct *structPtr, AliHLTPHOSRecPointListDataStruct* recPointList);
48 Int_t CreateRecPointStructArray(AliHLTPHOSRecPointDataStruct* rectStructsPtr, AliHLTPHOSRecPointListDataStruct* list, Int_t nPoints);
49 Int_t CalculateCenterOfGravity(AliHLTPHOSRecPointDataStruct* recPointPtr);
50 Int_t ClusterizeStruct(AliHLTPHOSRecPointDataStruct* recArrayPtr, AliHLTPHOSClusterDataStruct* clusterArrayPtr);
51 Int_t ResetCellEnergyArray();
52
53
54 private:
55
56 AliHLTPHOSRcuCellEnergyDataStruct* fStructArray; /**<Array containing the cell data struct*/
57 AliHLTUInt8_t fPHOSModule; /**<Number of the PHOSModule*/
58 Float_t fEnergyArray[N_COLUMNS_MOD][N_ROWS_MOD]; /**<2D array of cell energies*/
59 Float_t fThreshold; /**<Energy threshold*/
60 Float_t fClusterThreshold; /**<Cluster threshold*/
61 Float_t fHighGainFactor;
62 Float_t fLowGainFactor;
63 Int_t fArraySize; /**<Size of the array which the energies are summed*/
64 Int_t fMultiplicity; /**<Number of crystals the energies are summed for*/
65
66 ClassDef(AliHLTPHOSClusterizer, 1);
67};
68
69#endif