/*=========================================================================
* CSLoad.h :       Header file for loading CS
*
* Version                      1.0
* Creation date								 05/05/97
* Revision date
*
* That file needs to be compatible for all platforms.
*
* (c) Ubi Studios 1997
*=======================================================================*/
#if !defined(__CSLOAD_H__)
#define __CSLOAD_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))
 
 
 
/**** CS scripts ****/
#define C_Section_CSHeader									"ZOO_HEADER"
#define C_Entry_FileVersion									"VersionNumber"
#define C_Section_AllCollideSets						"AllCollideSets"
#define C_Section_CSGeneral									"CS"
 
#define C_Entry_ZDR													"ZDR"
#define C_Entry_ZDD													"ZDD"
#define C_Entry_ZDE													"ZDE"
 
 
 
/*
 * Animations files script call-backs
 */
#if !defined(U64)
extern CPA_EXPORT SCR_tde_Anl_ReturnValue CS_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 CS_fn_eScriptCallBackGeneral(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action	_eAction);
 
extern CPA_EXPORT SCR_tde_Anl_ReturnValue CS_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 CS_fn_eScriptCallBackBinGeneral(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action	_eAction);
 
#endif /* U64 */
 
 
/*************************************************/
/********* global for CS Link Table *************/
/*************************************************/
#if !defined(U64)
extern CPA_EXPORT SCR_tdst_Link_Table CS_g_stLinkTable;
#endif /* U64 */
/*************************************************/
 
/*
 * Initialisation and access to link table for CS name storage
 */
#if !defined(U64)
extern CPA_EXPORT SCR_tdst_Link_Table *CS_fn_p_stGetLinkTable(void);
#endif /* U64 */
extern CPA_EXPORT void CS_fn_vInitLinkTable(void);
extern CPA_EXPORT void CS_fn_vCloseLinkTable(void);
extern CPA_EXPORT void CS_fn_vRegisterAllScriptSections(void);
 
/*
 * For the binarisation
 */
extern CPA_EXPORT PCS_tdxHandleToPhysicalCollSet CS_fn_xLoadCollideSet(char* _szSectionName);
/*
extern CPA_EXPORT void CS_fn_vPrepareSaveBinaryBloc();
extern CPA_EXPORT unsigned long CS_fn_ulWriteBinaryBloc(unsigned long _ulStructAddress, char* _p_cDestBuffer);
extern CPA_EXPORT void CS_fn_vWriteAllCSBinaryBlocs(char* _szBinaryFileName);
extern CPA_EXPORT unsigned long CS_fn_ulReadBinaryBloc(char* _p_cLoadedBuffer,unsigned long _ulLoadedBufferSize);
extern CPA_EXPORT void CS_fn_vReadAllCSBinaryBlocs(char* _szBinaryFileName);
extern CPA_EXPORT void CS_fn_vReadAllCSBinaryBlocs2(char* _szBinaryFileName);
extern CPA_EXPORT void CS_fn_vResolveBinaryBloc(unsigned long _ulAddress);
*/
/* !__CSLOAD_H__ */
#endif 
