2 // $Id: AliHLTCaloProcessor.h 29824 2008-11-10 13:43:55Z richterm $
4 #ifndef ALIHLTCALOPROCESSOR_H
5 #define ALIHLTCALOPROCESSOR_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 "AliHLTCaloBase.h"
11 #include "AliHLTCaloDefinitions.h"
12 #include "AliHLTDataTypes.h"
13 #include "AliHLTCaloConstants.h"
15 using namespace CaloHLTConst;
17 class AliHLTCaloProcessor:public AliHLTProcessor //public AliHLTCaloBase
21 AliHLTCaloProcessor();
22 virtual ~AliHLTCaloProcessor();
23 virtual int DoInit(int argc, const char** argv) = 0;
24 virtual int Deinit() = 0;
25 virtual const char* GetComponentID() = 0;
26 virtual void GetInputDataTypes( std::vector <AliHLTComponentDataType>& list) =0;
27 virtual AliHLTComponentDataType GetOutputDataType() =0;
28 virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier) =0;
29 virtual AliHLTComponent* Spawn() = 0;
33 const char *IntToChar(int number);
35 *Check file and write messages to AliLog system
37 bool CheckFileLog(const char *origin, const char *filename, const char *opt);
38 void DoneWritingLog(const char *origin, const char *filename);
40 using AliHLTProcessor::DoEvent;
43 void ScanRunNumberFromFile();
44 virtual int ScanArgumentsModule(int argc, const char** argv);
45 int fPhosEventCount; /**<Global event counter for this component*/
46 AliHLTUInt8_t fModuleID; /**<ID of the module this component read data from (0-4)*/
48 Bool_t fPrintInfoModule; /**<wether or not to print debugg info to std out*/
49 int fPrintInfoFrequncyModule; /**<Defines the update frequency for information printet to std out*/
51 static const AliHLTComponentDataType fgkInputDataTypes[]; /**<List of datatypes that can be given to this component*/
57 AliHLTCaloProcessor(const AliHLTCaloProcessor & );
58 AliHLTCaloProcessor & operator = (const AliHLTCaloProcessor &);