]>
Commit | Line | Data |
---|---|---|
91b95d47 | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
2 | * See cxx source for full Copyright notice */ | |
3 | ||
5894eaa5 | 4 | /** @file AliHLTPHOSClusterizerComponent.h |
91b95d47 | 5 | @author Øystein Djuvsland |
6 | @date | |
7 | @brief A clusterizer component for PHOS HLT | |
8 | */ | |
9 | ||
10 | ||
11 | #ifndef ALIHLTPHOSCLUSTERIZERCOMPONENT_H | |
12 | #define ALIHLTPHOSCLUSTERIZERCOMPONENT_H | |
aac22523 | 13 | |
14 | #include "AliHLTProcessor.h" | |
15 | ||
91b95d47 | 16 | |
17 | class AliHLTPHOSClusterizer; | |
18 | class Rtypes; | |
19 | struct AliHLTPHOSRcuCellEnergyDataStruct; | |
20 | struct AliHLTPHOSClusterDataStruct; | |
21 | struct AliHLTPHOSRecPointDataStruct; | |
22 | struct AliHLTPHOSRecPointListDataStruct; | |
aac22523 | 23 | |
24 | ||
25 | class AliHLTPHOSClusterizerComponent: public AliHLTProcessor | |
26 | { | |
27 | public: | |
28 | ||
29 | AliHLTPHOSClusterizerComponent(); | |
30 | ~AliHLTPHOSClusterizerComponent(); | |
31 | AliHLTPHOSClusterizerComponent(const AliHLTPHOSClusterizerComponent &); | |
32 | AliHLTPHOSClusterizerComponent & operator = (const AliHLTPHOSClusterizerComponent &) | |
33 | { | |
34 | return *this; | |
35 | } | |
36 | const char* GetComponentID(); | |
6e709a0d | 37 | void GetInputDataTypes(std::vector<AliHLTComponentDataType>& list); |
aac22523 | 38 | |
39 | AliHLTComponentDataType GetOutputDataType(); | |
40 | ||
41 | void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier); | |
42 | ||
6e709a0d | 43 | int DoEvent(const AliHLTComponentEventData&, const AliHLTComponentBlockData*, |
aac22523 | 44 | AliHLTComponentTriggerData&, AliHLTUInt8_t*, AliHLTUInt32_t&, |
45 | std::vector<AliHLTComponentBlockData>&); | |
46 | ||
47 | AliHLTComponent* Spawn(); | |
48 | ||
49 | protected: | |
50 | ||
6e709a0d | 51 | int DoInit(int argc, const char** argv); |
52 | int Deinit(); | |
53 | int DoDeinit(); | |
aac22523 | 54 | |
55 | private: | |
91b95d47 | 56 | AliHLTPHOSClusterizer* fClusterizerPtr; //Pointer to the clusterizer |
57 | AliHLTPHOSClusterDataStruct* fOutPtr; //Pointer to the struct of output clusters | |
58 | AliHLTPHOSRecPointDataStruct* fRecPointStructArrayPtr; //Pointer to the struct of output recpoints | |
59 | AliHLTPHOSRecPointListDataStruct* fRecPointListPtr; //Pointer to the struct of list of output recpoints | |
60 | static const AliHLTComponentDataType fgkInputDataTypes[]; //HLT input data type | |
aac22523 | 61 | |
62 | }; | |
63 | ||
64 | #endif |