]>
Commit | Line | Data |
---|---|---|
c83e4f55 | 1 | #ifndef ALIHLTPHOSPROCESSOR_H |
2 | #define ALIHLTPHOSPROCESSOR_H | |
3 | ||
4 | #include "AliHLTProcessor.h" | |
dabc4c35 | 5 | #include "AliHLTPHOSConstants.h" |
6 | #include "AliHLTPHOSCommonDefs.h" | |
7 | ||
8 | using namespace PhosHLTConst; | |
c83e4f55 | 9 | |
10 | class AliHLTPHOSProcessor:public AliHLTProcessor | |
11 | { | |
12 | public: | |
13 | AliHLTPHOSProcessor(); | |
14 | virtual ~AliHLTPHOSProcessor(); | |
15 | AliHLTPHOSProcessor(const AliHLTPHOSProcessor & ); | |
16 | AliHLTPHOSProcessor & operator = (const AliHLTPHOSProcessor &) | |
17 | { | |
18 | return *this; | |
19 | }; | |
20 | ||
21 | virtual int DoInit(int argc, const char** argv) = 0; | |
22 | virtual int Deinit() = 0; | |
23 | virtual const char* GetComponentID() = 0; | |
24 | const AliHLTUInt16_t GetEquippmentID() const; | |
25 | virtual void GetInputDataTypes( std::vector <AliHLTComponentDataType>& list) =0; | |
26 | virtual AliHLTComponentDataType GetOutputDataType() =0; | |
27 | virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier) =0; | |
28 | virtual AliHLTComponent* Spawn() = 0; | |
29 | protected: | |
30 | int fPhosEventCount; /**<Global event counter for this component*/ | |
31 | const AliHLTUInt16_t fkEquippmentID; /**<Equippment ID as defined by ALICE*/ | |
32 | AliHLTUInt8_t fModuleID; /**<ID of the module this component read data from (0-4)*/ | |
33 | AliHLTUInt8_t fRcuX; /**<X position of RCU the data from this Equippment comes from (0 or 1)*/ | |
34 | AliHLTUInt8_t fRcuZ; /**<Z position of RCU the data from this Equippment comes from (0 or 1)*/ | |
35 | AliHLTUInt8_t fRcuZOffset; /**<offset in therms of towers in the Z direction relative to the module*/ | |
36 | AliHLTUInt8_t fRcuXOffset; /**<offset in therms of towers in the X direction relative to the module*/ | |
37 | Bool_t fPrintInfo; /**<wether or not to print debugg info to std out*/ | |
38 | Bool_t fIsSetEquippmentID; /**<wether or not the EquippmentID is set*/ | |
39 | int fPrintInfoFrequncy; /**<Defines the update frequency for information printet to std out*/ | |
40 | void SetEquippmentID(AliHLTUInt16_t id); | |
41 | void SetCoordinates(AliHLTUInt16_t equippmentID); | |
42 | int ScanArguments(int argc, const char** argv); | |
43 | static const AliHLTComponentDataType fgkInputDataTypes[]; /**<List of datatypes that can be given to this component*/ | |
44 | private: | |
45 | ||
46 | ||
47 | }; | |
48 | ||
49 | ||
50 | #endif |