3 #ifndef ALIHLTDATATYPES_H
4 #define ALIHLTDATATYPES_H
5 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
6 * See cxx source for full Copyright notice */
13 typedef unsigned char AliHLTUInt8_t;
15 typedef unsigned int AliHLTUInt32_t;
17 typedef unsigned long long AliHLTUInt64_t;
19 typedef AliHLTUInt64_t AliHLTEventID_t;
21 enum AliHLTComponent_LogSeverity { kHLTLogNone=0, kHLTLogBenchmark=1, kHLTLogDebug=2, kHLTLogInfo=4, kHLTLogWarning=8, kHLTLogError=16, kHLTLogFatal=32 };
23 struct AliHLTComponent_EventData
25 AliHLTUInt32_t fStructSize;
26 AliHLTEventID_t fEventID;
27 AliHLTUInt32_t fEventCreation_s;
28 AliHLTUInt32_t fEventCreation_us;
29 AliHLTUInt32_t fBlockCnt;
32 struct AliHLTComponent_ShmData
34 AliHLTUInt32_t fStructSize;
35 AliHLTUInt32_t fShmType;
36 AliHLTUInt64_t fShmID;
39 struct AliHLTComponent_DataType
41 AliHLTUInt32_t fStructSize;
46 struct AliHLTComponent_BlockData
48 AliHLTUInt32_t fStructSize;
49 AliHLTComponent_ShmData fShmKey;
50 AliHLTUInt32_t fOffset;
53 AliHLTComponent_DataType fDataType;
54 AliHLTUInt32_t fSpecification;
57 struct AliHLTComponent_TriggerData
59 AliHLTUInt32_t fStructSize;
60 AliHLTUInt32_t fDataSize;
64 struct AliHLTComponent_EventDoneData
66 AliHLTUInt32_t fStructSize;
67 AliHLTUInt32_t fDataSize;
71 struct AliHLTComponentEnvironment
73 AliHLTUInt32_t fStructSize;
75 void* (*fAllocMemoryFunc)( void* param, unsigned long size );
77 int (*fAllocShmMemoryFunc)( void* param, unsigned long size, AliHLTComponent_BlockData* blockLocation ); // future addition already foreseen/envisioned
79 int (*fMakeOutputDataBlockListFunc)( void* param, const vector<AliHLTComponent_BlockData>& blocks, AliHLTUInt32_t* blockCount, AliHLTComponent_BlockData** outputBlocks );
80 int (*fGetEventDoneDataFunc)( void* param, AliHLTEventID_t eventID, unsigned long size, AliHLTComponent_EventDoneData** edd );
81 int (*fLoggingFunc)( void* param, AliHLTComponent_LogSeverity severity, const char* origin, const char* keyword, const char* message );