reman3/Rayman_X/cpa/public/GAM/LoadBin.h

205 lines
9.4 KiB
C

/* (c) Ubi R&D 1997*/
/* See Alain Robin for any comment or question*/
#if !defined(__LOADGAMBIN_H__)
#define __LOADGAMBIN_H__
#ifdef __cplusplus
extern "C" {
#endif
/* For DLLs who are using this module : */
#undef 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
/****************************************************************************/
/* GLOBAL VARIABLES */
/****************************************************************************/
/*HP 02/03*/
#if !defined(U64)
extern SCR_tdst_Link_Table BIN_g_stFamilyNamesLinkTable; /* To transform the Ids into family names*/
extern SCR_tdst_Link_Table BIN_g_stGlobalStatesLinkTable; /* To be able to get the id of a state when we binarize the characters*/
extern SCR_tdst_Link_Table BIN_g_stGlobalTBLLinkTable; /* Same purpose*/
extern SCR_tdst_Link_Table BIN_g_stBinarisationButtonLinkTable;
extern SCR_tdst_Link_Table FON_g_stFontLinkTable;
/*HP 02/03*/
#endif
extern BIN_tdxHandleToReducedLinkTable g_hFixReducedLinkTable;
/****************************************************************************/
/* PUBLIC MACROS & CONSTANTS */
/****************************************************************************/
/****************************************************************************/
/* BASIC FUNCTIONS */
/****************************************************************************/
/*----------------------------------------------------------------------------
// Description : fn_vBinSaveLevel
----------------------------------------------------------------------------//
// Input : _szLevelName : Name of the level to save
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vBinSaveLevel(char* _szLevelName);
/*----------------------------------------------------------------------------
// Description : fn_vBinLoadLevel
----------------------------------------------------------------------------//
// Input : _szLevelName : Name of the level to save
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vBinLoadLevel(char* _szLevelName);
/*----------------------------------------------------------------------------
// Description : fn_vMarkFix
// Function to mark the fix into the link tables
----------------------------------------------------------------------------//
// Input :
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vMarkFix();
/*----------------------------------------------------------------------------
// Description : fn_vBinSaveFix
----------------------------------------------------------------------------//
// Input : _szFixName : Name of the fix to save
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vBinSaveFix(char* _szFixName);
/*----------------------------------------------------------------------------
// Description : fn_vBinLoadFix
----------------------------------------------------------------------------//
// Input : _szFixName : Name of the level to save
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vBinLoadFix(char* _szFixName);
/*----------------------------------------------------------------------------
// Description : fn_vBinLoadLevelFromOneFile
----------------------------------------------------------------------------//
// Input : _szLevelName : Name of the level to save
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vBinLoadLevelFromOneFile(char* _szLevelName);
/*----------------------------------------------------------------------------
// Description : fn_vBinSaveLevelInOneFile
----------------------------------------------------------------------------//
// Input : _szLevelName : Name of the level to save
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vBinSaveLevelInOneFile(char* _szLevelName);
/*----------------------------------------------------------------------------
// Description : fn_vBinSaveFixIntoOneFile
----------------------------------------------------------------------------//
// Input : _szFixName : Name of the fix to save
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vBinSaveFixIntoOneFile(char* _szFixName);
/*----------------------------------------------------------------------------
// Description : fn_vBinLoadFixFromOneFile
----------------------------------------------------------------------------//
// Input : _szFixName : Name of the fix
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vBinLoadFixFromOneFile(char* _szFixName);
/*----------------------------------------------------------------------------
// Description : fn_v_InitBinarizeFamilyProcess
// Register callback
------------------------------------------------------------------------------
// Input :
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_v_InitBinarizeFamilyProcess();
/*----------------------------------------------------------------------------
// Description : fn_vBinSaveFamilyInOneFile
----------------------------------------------------------------------------//
// Input : _szLevelName : Name of the level to save
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vBinSaveFamilyInOneFile(struct tdstFamilyList_ *_p_stFamily,
char* _szFamilyBankName,
unsigned long _ulFamilyId);
/*----------------------------------------------------------------------------
// Description : fn_vEmptyAllLinkTablesForTheFamilies
------------------------------------------------------------------------------
// Input :
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vEmptyAllLinkTablesForTheFamilies();
/*----------------------------------------------------------------------------
// Description : fn_vLoadBinFamily
------------------------------------------------------------------------------
// Input : _ulId : Id of the family to load
// _xMode : 1=Fix mode 0=Level mode
// Output : the pointer to the family
----------------------------------------------------------------------------*/
extern CPA_EXPORT struct tdstFamilyList_ *fn_vLoadBinFamily(unsigned long _ulId,ACP_tdxBool _xMode);
/*----------------------------------------------------------------------------
// Description : fn_vSaveBinaryCharacter
------------------------------------------------------------------------------
// Input : _hCharacterSPO : Handle to the character SPO
// _szLevelName : Name of the current level
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vSaveBinaryCharacter(struct tdstEngineObject_ *p_stEngineObject,char* _szLevelName);
/*----------------------------------------------------------------------------
// Description : fn_hLoadBinaryCharacterOfFix
------------------------------------------------------------------------------
// Input : _szFixName : Name of the level
// _szCharacterName : Name of the character
// _ulId : Id of the character SPO
// Output : Handle to the character SPO
----------------------------------------------------------------------------*/
extern CPA_EXPORT struct tdstEngineObject_ *fn_hLoadBinaryCharacterOfFix(char* _szFixName,char* _szCharacterName,unsigned long _ulId);
/*----------------------------------------------------------------------------
// Description : fn_vLoadBinaryCharacterOfLevel
------------------------------------------------------------------------------
// Input : _szLevelName : Name of the level
// _szCharacterName : Name of the character
// _ulId : Id of the character SPO
// Output : Handle to the character SPO
----------------------------------------------------------------------------*/
extern CPA_EXPORT HIE_tdxHandleToSuperObject fn_hLoadBinaryCharacterOfLevel(char* _szLevelName,char* _szCharacterName, unsigned long _ulId);
/*----------------------------------------------------------------------------
// Description : fn_vReadAIBloc
------------------------------------------------------------------------------
// Input : _hEngObj : Handle to the engine object containing the AI
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_vReadAIBloc(struct tdstEngineObject_* _hEngObj);
/*----------------------------------------------------------------------------
// Description : fn_v_WriteAIBloc
------------------------------------------------------------------------------
// Input : _hEngObj : Handle to the engine object containing the AI
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void fn_v_WriteAIBloc(struct tdstEngineObject_* _hEngObj);
#ifdef __cplusplus
}/* extern "C" */
#endif
#endif