]>
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 |
d2b84453 | 5 | @author Ã\98ystein Djuvsland |
91b95d47 | 6 | @date |
7 | @brief A clusterizer component for PHOS HLT | |
8 | */ | |
9 | ||
10 | ||
11 | #ifndef ALIHLTPHOSCLUSTERIZERCOMPONENT_H | |
12 | #define ALIHLTPHOSCLUSTERIZERCOMPONENT_H | |
aac22523 | 13 | |
aac22523 | 14 | |
91b95d47 | 15 | |
9c9d15d6 | 16 | #include "AliHLTPHOSProcessor.h" |
17 | ||
18 | //#include "AliHLTPHOSBase.h" | |
d2b84453 | 19 | //#include "AliHLTPHOSDefinitions.h" |
20 | //#include "AliHLTProcessor.h" | |
21 | ||
91b95d47 | 22 | class AliHLTPHOSClusterizer; |
d2b84453 | 23 | |
24 | //class Rtypes; | |
25 | ||
9cc0deb1 | 26 | class AliHLTPHOSRcuCellEnergyDataStruct; |
27 | class AliHLTPHOSClusterDataStruct; | |
28 | class AliHLTPHOSRecPointDataStruct; | |
29 | class AliHLTPHOSRecPointContainerStruct; | |
30 | class AliHLTPHOSRecPointListDataStruct; | |
31 | class AliHLTPHOSDigitContainerDataStruct; | |
aac22523 | 32 | |
33 | ||
9c9d15d6 | 34 | |
35 | // PTH class AliHLTPHOSClusterizerComponent: public AliHLTPHOSBase, public AliHLTProcessor | |
36 | class AliHLTPHOSClusterizerComponent: public AliHLTPHOSProcessor | |
37 | //class AliHLTPHOSClusterizerComponent: public AliHLTPHOSBase, public AliHLTProcessor | |
aac22523 | 38 | { |
39 | public: | |
40 | ||
41 | AliHLTPHOSClusterizerComponent(); | |
ab38011b | 42 | virtual ~AliHLTPHOSClusterizerComponent(); |
d2b84453 | 43 | |
44 | // AliHLTPHOSClusterizerComponent(const AliHLTPHOSClusterizerComponent &); | |
45 | // AliHLTPHOSClusterizerComponent & operator = (const AliHLTPHOSClusterizerComponent &) | |
46 | // { | |
47 | ||
48 | // return *this; | |
49 | // } | |
50 | ||
9c9d15d6 | 51 | |
52 | ||
aac22523 | 53 | const char* GetComponentID(); |
9cc0deb1 | 54 | void GetInputDataTypes(std::vector<AliHLTComponentDataType>& list); |
aac22523 | 55 | |
56 | AliHLTComponentDataType GetOutputDataType(); | |
57 | ||
58 | void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier); | |
59 | ||
ab38011b | 60 | int DoEvent(const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks, |
61 | AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr, AliHLTUInt32_t& size, | |
62 | std::vector<AliHLTComponentBlockData>& outputBlocks); | |
aac22523 | 63 | |
64 | AliHLTComponent* Spawn(); | |
9cc0deb1 | 65 | |
66 | // void SetNoCrazyness(Bool_t val); | |
aac22523 | 67 | |
68 | protected: | |
69 | ||
1804b020 | 70 | using AliHLTPHOSProcessor::DoEvent; |
9c9d15d6 | 71 | |
6e709a0d | 72 | int DoInit(int argc, const char** argv); |
9c9d15d6 | 73 | virtual int Deinit(); ////////// PTH WARNING you should Define a class AliHLTPHOSModuleProcessor |
6e709a0d | 74 | int DoDeinit(); |
aac22523 | 75 | |
76 | private: | |
ab38011b | 77 | AliHLTPHOSDigitContainerDataStruct *fAllDigitsPtr; //comment |
91b95d47 | 78 | AliHLTPHOSClusterizer* fClusterizerPtr; //Pointer to the clusterizer |
9cc0deb1 | 79 | AliHLTPHOSRecPointContainerStruct* fOutPtr; //Pointer to the struct of output clusters |
91b95d47 | 80 | AliHLTPHOSRecPointDataStruct* fRecPointStructArrayPtr; //Pointer to the struct of output recpoints |
81 | AliHLTPHOSRecPointListDataStruct* fRecPointListPtr; //Pointer to the struct of list of output recpoints | |
ab38011b | 82 | Int_t fDigitCount; //comment |
83 | Bool_t fNoCrazyness; //comment | |
9cc0deb1 | 84 | |
91b95d47 | 85 | static const AliHLTComponentDataType fgkInputDataTypes[]; //HLT input data type |
aac22523 | 86 | }; |
87 | ||
88 | #endif |