117 lines
4.0 KiB
C
117 lines
4.0 KiB
C
#ifndef _SND_LOAD_BINARY_H_
|
|
#define _SND_LOAD_BINARY_H_
|
|
|
|
/*
|
|
/////////////////////////////////////////////////////////////////
|
|
// SNDLDBIN.H Version 2.0 //
|
|
/////////////////////////////////////////////////////////////////
|
|
// Module de chargement des banques son binaires //
|
|
/////////////////////////////////////////////////////////////////
|
|
*/
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif /* __cplusplus*/
|
|
|
|
|
|
/****************************************/
|
|
#undef DLL_IMPEXP
|
|
#undef CPA_EXPORT
|
|
#ifdef _DLL_COMPILATION_MODE
|
|
#define DLL_IMPEXP __declspec(dllexport)
|
|
#define CPA_EXPORT
|
|
#else
|
|
#define DLL_IMPEXP
|
|
/****************************************/
|
|
#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
|
|
/****************************************/
|
|
#endif
|
|
/****************************************/
|
|
|
|
/************************************************************/
|
|
/**** Sound Bank Management functions *********/
|
|
/************************************************************/
|
|
|
|
#if defined(_DLL_COMPILATION_MODE) && !defined(SNDDLL_MODULE)
|
|
#pragma message("-> sndldbin : pointeurs de fonctions definis dans SNDDLL.H")
|
|
#else
|
|
/*get the number of bank*/
|
|
DLL_IMPEXP CPA_EXPORT int SND_CALL SND_fn_iGetNumberOfBanks(void);
|
|
/*get the number of events in a bank*/
|
|
DLL_IMPEXP CPA_EXPORT int SND_CALL SND_fn_iGetNumberOfEventInBank(int bank);
|
|
|
|
/* Usually, user will first call SND_fn_bStartLoadBanks,*/
|
|
/* then SND_fn_bInitBank for each bank to be loaded,*/
|
|
/* ending with SND_fn_bEndLoadBanks to load banks*/
|
|
/* SND_fn_bStartLoadBanks:*/
|
|
/* This function must be called before a series of bank loadings: */
|
|
DLL_IMPEXP CPA_EXPORT SndBool SND_CALL SND_fn_bStartLoadBanks(void);
|
|
DLL_IMPEXP CPA_EXPORT SndBool SND_CALL SND_fn_bStartLoadBanks2(int level);
|
|
/* SND_fn_bInitBank:*/
|
|
/* This function must be called for each bank to be loaded: */
|
|
DLL_IMPEXP CPA_EXPORT SndBool SND_CALL SND_fn_bInitBank(int _iBankNum);
|
|
DLL_IMPEXP CPA_EXPORT SndBool SND_CALL SND_fn_bInitBank2(int _iBankNum,int level);
|
|
/* SND_fn_bEndLoadBanks:*/
|
|
/* This function must be called after a series of bank loadings: */
|
|
DLL_IMPEXP CPA_EXPORT SndBool SND_CALL SND_fn_bEndLoadBanks(void);
|
|
|
|
DLL_IMPEXP CPA_EXPORT SND_tdstBlockEvent* SND_CALL SND_fn_pGetBinEvent(unsigned long _ulBinId);
|
|
DLL_IMPEXP CPA_EXPORT tdstBlockResourceMem* SND_CALL SND_fn_pGetBinRes(unsigned long _ulBinId);
|
|
|
|
/* This function loads the data in memory and sets the parent structs:*/
|
|
DLL_IMPEXP CPA_EXPORT SndBool SND_CALL SND_fn_bLoadBinaryBank(int _iBankNum);
|
|
DLL_IMPEXP CPA_EXPORT SndBool SND_CALL SND_fn_bUnLoadBinaryBank(int _iBankNum);
|
|
|
|
/* non public function*/
|
|
DLL_IMPEXP CPA_EXPORT void SND_CALL SND_fn_vInitBankSnd(char *czPathName);
|
|
|
|
/* non public function*/
|
|
DLL_IMPEXP CPA_EXPORT void SND_CALL SND_fn_vDesInitBankSnd(void);
|
|
|
|
DLL_IMPEXP CPA_EXPORT SndBool SND_fn_bInitDataLoadSnd(const char *_szFileTitle);
|
|
|
|
#endif
|
|
|
|
#define BANK_ALL_LEVEL -1
|
|
|
|
/* Declaration of the 2 global variables:*/
|
|
/*extern CPA_EXPORT tdstSndBankDescriptorList SND_g_dBankDescriptionList;*/
|
|
|
|
typedef struct _EvtGrpDesc
|
|
{
|
|
unsigned long ulId;
|
|
unsigned long ulNbEvents;
|
|
unsigned long ulOffset;
|
|
} EvtGrpDesc;
|
|
|
|
#ifndef NO_ACP_LDBIN
|
|
unsigned long SND_fn_ulGetEventGroupCount(void);
|
|
EvtGrpDesc *SND_fn_pstGetEventGroupData(void);
|
|
void SND_fn_vSetEventGroupData(EvtGrpDesc *_pData);
|
|
void SND_fn_vSetEventGroupCount(unsigned long _ulCount);
|
|
|
|
#endif /*NO_ACP_LDBIN*/
|
|
|
|
const char *SND_fn_pszGetSoundEventSectionNameFromPointer(SND_tdstBlockEvent* _pEvent);
|
|
unsigned long SND_fn_ulGetEventBinIdFromPointer(SND_tdstBlockEvent *_pEvent);
|
|
SND_tdxHandleToSoundEvent SND_fn_hGetSoundEventHandleFromEditorId(unsigned long _ulEvtId);
|
|
unsigned long SND_fn_ulGetEventBinIdFromSectionName(const char *szSectioName);
|
|
tdstBlockResourceMem* SND_fn_pstGetResFromEdIdSnd(unsigned long ulEdId);
|
|
|
|
#define SND_INVALID_BINID 0xFFFFFFFF
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif /* __cplusplus*/
|
|
|
|
#endif /*_SND_LOAD_BINARY_H_*/
|