reman3/Rayman_X/cpa/public/AI/AIGame/ConvOper.h

63 lines
2.8 KiB
C

#if !defined(__CONV_OPER_H__)
#define __CONV_OPER_H__
#include "..\AiBase\Specif\AiOption.h"
/**************************************/
#if !defined(CPA_EXPORT)
#if defined(CPA_WANTS_IMPORT)
#define CPA_EXPORT __declspec(dllimport)
#elif defined(CPA_WANTS_EXPORT)
#define CPA_EXPORT __declspec(dllexport)
#else
#define CPA_EXPORT
#endif /*CPA_WANTS_IMPORT || CPA_WANTS_EXPORT*/
#endif /*CPA_EXPORT*/
/**************************************/
#undef extern
#define EXTERN_AI_DLL extern
/************************************************************************************************************************/
/*************************************************************************************/
/* Converted in function pointers */
/* Operator*/
/* for editor and/or debugger + readrule.c*/
#if defined(ACTIVE_EDITOR)
EXTERN_AI_DLL CPA_EXPORT char *szGetOperatorTypeInParamFromId(enum tdeOperatorId_ eOperatorId);
EXTERN_AI_DLL CPA_EXPORT char *szGetOperatorTypeOutParamFromId(enum tdeOperatorId_ eOperatorId);
EXTERN_AI_DLL CPA_EXPORT enum tdeOperatorId_ fn_eFindOperatorIdFromEditorName(char *szOperator);
EXTERN_AI_DLL CPA_EXPORT char *szFindOperatorEditorNameFromId(enum tdeOperatorId_ eOperatorId);
EXTERN_AI_DLL CPA_EXPORT char *szFindOperatorScriptNameFromId(enum tdeOperatorId_ eOperatorId);
#endif /* ACTIVE_EDITOR*/
EXTERN_AI_DLL CPA_EXPORT enum tdeOperatorId_ fn_eFindOperatorIdFromScriptName(char *szOperator);
EXTERN_AI_DLL CPA_EXPORT enum tdeOperatorId_ fn_eGetNbOperator();
#define M_IsOperatorIdValid(eOperatorId) ((eOperatorId)<fn_eGetNbOperator())
#if defined(_AI_LIB_)
tdp_fn_p_stOperatorFunctionPtr fn_p_fn_pGetOperatorFunctionPtr(enum tdeOperatorId_ eOperatorId);
#endif /* _AI_LIB_*/
#if !defined(OPTIMIZED_COMMAND)
#if defined(ACTIVE_EDITOR)
#define M_OPERATOR_ENTRY(a,b,c,d,e,f) a,b,c,d,e,f
void fn_vDefineOperatorEntry(enum tdeOperatorId_ eOperatorId,char *szOperatorEditorName,char *szOperatorScriptName,tdp_fn_p_stOperatorFunctionPtr p_fn_p_stOperatorFunction,char *szOperatorTypeInParam,char *szOperatorTypeOutParam);
#elif defined(_AI_LIB_)
#define M_OPERATOR_ENTRY(a,b,c,d,e,f) a,c,d,e,f
void fn_vDefineOperatorEntry(enum tdeOperatorId_ eOperatorId,char *szOperatorScriptName,tdp_fn_p_stOperatorFunctionPtr p_fn_p_stOperatorFunction,char *szOperatorTypeInParam,char *szOperatorTypeOutParam);
#endif /* ACTIVE_EDITOR _AI_LIB_*/
#if defined(__DEBUG_AI__)
void fn_vInitOperatorTable(tdp_fn_p_stOperatorFunctionPtr fn_p_stDefaultOperatorFunctionPointer);
void fn_vCheckOperatorTable(tdp_fn_p_stOperatorFunctionPtr fn_p_stDefaultOperatorFunctionPointer);
#endif /* __DEBUG_AI__*/
#endif /* OPTIMIZED_COMMAND*/
/*******************************************************************************/
#undef EXTERN_AI_DLL
#endif /* __CONV_OPER_H__*/