]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSDigitMakerComponent.h
New classes to make AliHLTPHOSDigits online (Oystein)
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSDigitMakerComponent.h
1 //insert copyright
2
3 #ifndef ALIHLTPHOSDIGITMAKERCOMPONENT_H
4 #define ALIHLTPHOSDIGITMAKERCOMPONENT_H
5
6 #include "AliHLTPHOSProcessor.h"
7 //#include "AliHLTPHOSDigitMaker.h"
8 //#include "TTree.h"
9 //#include "TClonesArray.h"
10
11
12 class AliHLTPHOSDigitMaker;
13 class TTree;
14 class TClonesArray;
15 class AliHLTPHOSDigitContainerDataStruct;
16
17
18
19 class AliHLTPHOSDigitMakerComponent : public AliHLTPHOSProcessor
20 {
21 public:
22   AliHLTPHOSDigitMakerComponent();
23   ~AliHLTPHOSDigitMakerComponent();
24
25   const char* GetComponentID();
26
27   void GetInputDataTypes(std::vector<AliHLTComponentDataType>& list);
28
29   AliHLTComponentDataType GetOutputDataType();
30
31   void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
32
33   int DoEvent(const AliHLTComponentEventData&, const AliHLTComponentBlockData*,
34               AliHLTComponentTriggerData&, AliHLTUInt8_t*, AliHLTUInt32_t&,
35               std::vector<AliHLTComponentBlockData>&);
36   
37   AliHLTComponent* Spawn();
38   
39 protected:
40   int DoInit(int argc, const char** argv);
41   virtual int Deinit(); ////////// PTH WARNING you should Define a class AliHLTPHOSModuleProcessor
42   
43 private:
44   AliHLTPHOSDigitMaker *fDigitMakerPtr;
45   AliHLTPHOSDigitContainerDataStruct *fDigitContainerPtr;
46   UInt_t fEventCount;
47   Int_t fRunNb;
48
49   static const AliHLTComponentDataType fgkInputDataTypes[];     //HLT input data type
50
51 };
52 #endif
53