reman3/Rayman_X/cpa/public/IPO/IPOLoad.h

102 lines
4.2 KiB
C

/*=========================================================================
* IPOLoad.h : Header file for loading IPO
*
* Version 1.0
* Creation date 30/04/97
* Revision date
*
* That file needs to be compatible for all platforms.
*
* (c) Ubi Studios 1997
*=======================================================================*/
#if !defined(__IPOLOAD_H__)
#define __IPOLOAD_H__
/* For DLL using these function :*/
#include "cpa_expt.h"
/*****************************************************************************************/
/**** Below : macros used to read script. ****/
/*****************************************************************************************/
#define C_GrandChildSection ( 2)
#define C_ChildSection ( 1)
#define C_ThisSection ( 0)
#define C_ParentSection (-1)
#define C_GrandParentSection (-2)
#define C_GrandChildContext ( 2)
#define C_ChildContext ( 1)
#define C_ThisContext ( 0)
#define C_ParentContext (-1)
#define C_GrandParentContext (-2)
#define M_IsTitle (_eAction==SCR_EA_Anl_BeginSection)
#define M_IsEnd (_eAction==SCR_EA_Anl_EndSection)
#define M_IsBegSubSection (_eAction==SCR_EA_Anl_BeginSubSection)
#define M_IsEndSubSection (_eAction==SCR_EA_Anl_EndSubSection)
#define M_IsEntry (_eAction==SCR_EA_Anl_Entry)
#define M_ActionIs(szActionAsked) (!strcmpi(_p_szName,szActionAsked))
/**** IPO scripts ****/
#define C_Section_IPOHeader "IPO_HEADER"
#define C_Entry_FileVersion "VersionNumber"
#define C_Section_IPOGeneral "IPO"
#define C_Section_IPO_MirrorGeneral "IPO_Mirror"
#define C_Entry_PO "PO"
#define C_Entry_RLI "RLI"
/*
* Animations files script call-backs
*/
#if !defined(U64)
extern CPA_EXPORT SCR_tde_Anl_ReturnValue IPO_fn_eScriptCallBackHeader(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue IPO_fn_eScriptCallBackGeneral(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
/*BEGIN OS 06-Mar-98*/
extern CPA_EXPORT SCR_tde_Anl_ReturnValue IPO_fn_eScriptCallBackBinHeader(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue IPO_fn_eScriptCallBackBinGeneral(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
/*END OS 06-Mar-98*/
#endif /* U64 */
/*************************************************/
/********* global for IPO Link Table *************/
/*************************************************/
#if !defined(U64)
extern CPA_EXPORT SCR_tdst_Link_Table IPO_g_stLinkTable;
#endif /* U64 */
/*************************************************/
/*
* Initialisation and access to link table for IPO name storage
*/
#if !defined(U64)
extern CPA_EXPORT SCR_tdst_Link_Table *IPO_fn_p_stGetLinkTable(void);
#endif /* U64 */
extern CPA_EXPORT void IPO_fn_vInitLinkTable(void);
extern CPA_EXPORT void IPO_fn_vCloseLinkTable(void);
extern CPA_EXPORT void IPO_fn_vRegisterAllScriptSections(void);
extern CPA_EXPORT IPO_tdxHandleToInstanciatedPhysicalObject IPO_fn_xLoadInstanciatedPhysicalObject(char* _szSectionName);
/*BEGIN OS 06-Mar-98*/
extern CPA_EXPORT IPO_tdxHandleToInstanciatedPhysicalObject IPO_fn_xLoadBinInstanciatedPhysicalObject(char* _szSectionName);
/*END OS 06-Mar-98*/
/*
extern CPA_EXPORT void IPO_fn_vPrepareSaveBinaryBloc();
extern CPA_EXPORT unsigned long IPO_fn_ulWriteBinaryBloc(unsigned long _ulStructAddress, char* _p_cDestBuffer);
extern CPA_EXPORT void IPO_fn_vWriteAllIPOBinaryBlocs(char* _szBinaryFileName);
extern CPA_EXPORT unsigned long IPO_fn_ulReadBinaryBloc(char* _p_cLoadedBuffer,unsigned long _ulLoadedBufferSize);
extern CPA_EXPORT void IPO_fn_vReadAllIPOBinaryBlocs(char* _szBinaryFileName);
extern CPA_EXPORT void IPO_fn_vReadAllIPOBinaryBlocs2(char* _szBinaryFileName);
extern CPA_EXPORT void IPO_fn_vResolveBinaryBloc(unsigned long _ulAddress);
*/
/* !__IPOLOAD_H__ */
#endif