4 #ifndef ALIHLTPHOSPROCESSOR_H
5 #define ALIHLTPHOSPROCESSOR_H
6 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
7 * See cxx source for full Copyright notice */
9 #include "AliHLTProcessor.h"
10 //#include "AliHLTPHOSBase.h"
11 #include "AliHLTPHOSDefinitions.h"
12 #include "AliHLTDataTypes.h"
13 #include "AliHLTPHOSConstant.h"
15 using namespace PhosHLTConst;
17 //class AliHLTPHOSProcessor:public AliHLTProcessor, public AliHLTPHOSBase
18 class AliHLTPHOSProcessor:public AliHLTProcessor
22 AliHLTPHOSProcessor();
23 virtual ~AliHLTPHOSProcessor();
24 virtual int DoInit(int argc, const char** argv) = 0;
25 virtual int Deinit() = 0;
26 virtual const char* GetComponentID() = 0;
27 virtual void GetInputDataTypes( std::vector <AliHLTComponentDataType>& list) =0;
28 virtual AliHLTComponentDataType GetOutputDataType() =0;
29 virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier) =0;
30 virtual AliHLTComponent* Spawn() = 0;
34 const char *IntToChar(int number);
36 *Check file and write messages to AliLog system
38 bool CheckFileLog(const char *origin, const char *filename, const char *opt);
39 void DoneWritingLog(const char *origin, const char *filename);
41 using AliHLTProcessor::DoEvent;
44 void ScanRunNumberFromFile();
45 virtual int ScanArgumentsModule(int argc, const char** argv);
46 int fPhosEventCount; /**<Global event counter for this component*/
47 AliHLTUInt8_t fModuleID; /**<ID of the module this component read data from (0-4)*/
49 Bool_t fPrintInfoModule; /**<wether or not to print debugg info to std out*/
50 int fPrintInfoFrequncyModule; /**<Defines the update frequency for information printet to std out*/
52 static const AliHLTComponentDataType fgkInputDataTypes[]; /**<List of datatypes that can be given to this component*/
58 AliHLTPHOSProcessor(const AliHLTPHOSProcessor & );
59 AliHLTPHOSProcessor & operator = (const AliHLTPHOSProcessor &);