]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/BASE/AliHLT_C_Component_WrapperInterface.h
major change in the external component interface: redesigned and moved to libHLTinter...
[u/mrichter/AliRoot.git] / HLT / BASE / AliHLT_C_Component_WrapperInterface.h
CommitLineData
f23a6e1a 1// @(#) $Id$
2
3#ifndef ALIHLT_C_COMPONENT_WARAPPERINTERFACE_H
4#define ALIHLT_C_COMPONENT_WARAPPERINTERFACE_H
a3c9b745 5//* This file is property of and copyright by the ALICE HLT Project *
6//* ALICE Experiment at CERN, All rights reserved. *
7//* See cxx source for full Copyright notice *
f23a6e1a 8
b22e91eb 9/** @file AliHLT_C_Component_WrapperInterface.h
10 @author Matthias Richter, Timm Steinbeck
11 @date
12 @brief Pure C interface to the AliRoot HLT component handler
13 @note Utilized by the HLT Online (PubSub) framework
14*/
15
16/**
a3c9b745 17 * @defgroup alihlt_wrapper_interface_deprecated First version of the HLT wrapper
18 * interface.
19 * This is the first version of the wrapper interface and became deprecated in
20 * July 2008. See @ref alihlt_wrapper_interface for current interface
21 * description. The interface is fixed and can not be extended.
22 * @ingroup alihlt_wrapper_interface
f23a6e1a 23 */
24
25#include <AliHLTDataTypes.h>
2d7ff710 26/* Matthias Dec 2006
27 * The names have been changed for Aliroot's coding conventions sake
28 * The old names are defined for backward compatibility with the
29 * PublisherSubscriber framework
30 */
8ede8717 31typedef AliHLTComponentLogSeverity AliHLTComponent_LogSeverity;
32typedef AliHLTComponentEventData AliHLTComponent_EventData;
33typedef AliHLTComponentShmData AliHLTComponent_ShmData;
34typedef AliHLTComponentDataType AliHLTComponent_DataType;
35typedef AliHLTComponentBlockData AliHLTComponent_BlockData;
36typedef AliHLTComponentTriggerData AliHLTComponent_TriggerData;
37typedef AliHLTComponentEventDoneData AliHLTComponent_EventDoneData;
6f2f5ba7 38const AliHLTUInt32_t gkAliHLTComponent_InvalidShmType = gkAliHLTComponentInvalidShmType;
39const AliHLTUInt64_t gkAliHLTComponent_InvalidShmID = gkAliHLTComponentInvalidShmID;
f23a6e1a 40
71d7c760 41#ifdef __cplusplus
f23a6e1a 42extern "C" {
71d7c760 43#endif
b22e91eb 44
45/**
46 *
a3c9b745 47 * @ingroup alihlt_wrapper_interface_deprecated
b22e91eb 48 */
f23a6e1a 49int AliHLT_C_Component_InitSystem( AliHLTComponentEnvironment* environ );
b22e91eb 50
51/**
52 *
a3c9b745 53 * @ingroup alihlt_wrapper_interface_deprecated
b22e91eb 54 */
f23a6e1a 55int AliHLT_C_Component_DeinitSystem();
b22e91eb 56
57/**
58 *
a3c9b745 59 * @ingroup alihlt_wrapper_interface_deprecated
b22e91eb 60 */
f23a6e1a 61int AliHLT_C_Component_LoadLibrary( const char* libraryPath );
b22e91eb 62
63/**
64 *
a3c9b745 65 * @ingroup alihlt_wrapper_interface_deprecated
b22e91eb 66 */
f23a6e1a 67int AliHLT_C_Component_UnloadLibrary( const char* libraryPath );
b22e91eb 68
69/**
70 *
a3c9b745 71 * @ingroup alihlt_wrapper_interface_deprecated
b22e91eb 72 */
f23a6e1a 73int AliHLT_C_CreateComponent( const char* componentType, void* environ_param, int argc, const char** argv, AliHLTComponentHandle* handle );
b22e91eb 74
75/**
76 *
a3c9b745 77 * @ingroup alihlt_wrapper_interface_deprecated
b22e91eb 78 */
f23a6e1a 79void AliHLT_C_DestroyComponent( AliHLTComponentHandle );
b22e91eb 80
45c0a780 81/**
82 *
a3c9b745 83 * @ingroup alihlt_wrapper_interface_deprecated
45c0a780 84 */
85int AliHLT_C_SetRunDescription(const AliHLTRunDesc* desc, const char* runType);
86
b22e91eb 87/**
88 *
a3c9b745 89 * @ingroup alihlt_wrapper_interface_deprecated
b22e91eb 90 */
8ede8717 91int AliHLT_C_ProcessEvent( AliHLTComponentHandle handle, const AliHLTComponent_EventData* evtData, const AliHLTComponent_BlockData* blocks,
71d7c760 92 AliHLTComponent_TriggerData* trigData, AliHLTUInt8_t* outputPtr,
f23a6e1a 93 AliHLTUInt32_t* size, AliHLTUInt32_t* outputBlockCnt,
94 AliHLTComponent_BlockData** outputBlocks,
95 AliHLTComponent_EventDoneData** edd );
b22e91eb 96
97/**
98 *
a3c9b745 99 * @ingroup alihlt_wrapper_interface_deprecated
b22e91eb 100 */
71d7c760 101int AliHLT_C_GetOutputDataType( AliHLTComponentHandle, AliHLTComponent_DataType* dataType );
b22e91eb 102
103/**
104 *
a3c9b745 105 * @ingroup alihlt_wrapper_interface_deprecated
b22e91eb 106 */
71d7c760 107int AliHLT_C_GetOutputSize( AliHLTComponentHandle, unsigned long* constBase, double* inputMultiplier );
f23a6e1a 108
71d7c760 109#ifdef __cplusplus
f23a6e1a 110}
71d7c760 111#endif
f23a6e1a 112
113#endif //ALIHLT_C_COMPONENT_WARAPPERINTERFACE_H