/*=========================================================================
* CHLLoad.h :       Header file for loading CHL
*
* Version                      1.0
* Creation date								 29/05/97
* Revision date
*
* That file needs to be compatible for all platforms.
*
* (c) Ubi Studios 1997
*=======================================================================*/
#if !defined(__CHLLOAD_H__)
#define __CHLLOAD_H__
 
#if defined(__cplusplus)
extern "C"
{
#endif /* __cplusplus */
 
 
/* 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_GrandGrandChildContext    ( 3)
#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))
 
 
 
/**** CHL scripts ****/
#define C_Section_CHLHeader									"A3dHEADER"
#define C_Entry_FileVersion									"VersionNumber"
 
#define C_Section_CHLGeneral								"A3dChannelNames"
#define C_Entry_AddChannelName							"AddChannelName"
 
/*
 * Animations files script call-backs
 */
#if !defined(U64)
/*extern CPA_EXPORT SCR_tde_Anl_ReturnValue CHL_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 CHL_fn_eScriptCallBackGeneral(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action	_eAction);
#endif /* U64 */
 
/*************************************************/
/********* global for CHL Link Table *************/
/*************************************************/
#if !defined(U64)
extern CPA_EXPORT SCR_tdst_Link_Table CHL_g_stLinkTable;
#endif /* U64 */
/*************************************************/
 
/*
 * Initialisation and access to link table for CHL name storage
 */
#if !defined(U64)
extern CPA_EXPORT SCR_tdst_Link_Table *CHL_fn_p_stGetLinkTable(void);
#endif /* U64 */
extern CPA_EXPORT void CHL_fn_vInitLinkTable(void);
extern CPA_EXPORT void CHL_fn_vCloseLinkTable(void);
extern CPA_EXPORT void CHL_fn_vDeleteLinkTable(unsigned char ucMin,unsigned char ucMax);
 
extern CPA_EXPORT void CHL_fn_vRegisterAllScriptSections(void);
 
#if defined(__cplusplus)
}
#endif /* __cplusplus */
 
 
/* !__CHLLOAD_H__ */
#endif 
