mirror of
https://github.com/Mauler125/r5sdk.git
synced 2025-02-09 19:15:03 +01:00
79 lines
2.9 KiB
C
79 lines
2.9 KiB
C
|
/*H********************************************************************************/
|
||
|
/*!
|
||
|
\File testerregistry.h
|
||
|
|
||
|
\Description
|
||
|
Maintains a global registry for the tester2 application.
|
||
|
|
||
|
\Notes
|
||
|
This module works a little differently than other DirtySock modules.
|
||
|
Because of the nature of a registry (a global collector of shared
|
||
|
information) there is no pointer to pass around - Create simply
|
||
|
allocates memory of a given size and Destroy frees this memory.
|
||
|
Registry entries are stored in tagfield format.
|
||
|
|
||
|
\Copyright
|
||
|
Copyright (c) 2005 Electronic Arts Inc.
|
||
|
|
||
|
\Version 04/08/2005 (jfrank) First Version
|
||
|
*/
|
||
|
/********************************************************************************H*/
|
||
|
|
||
|
#ifndef _testerregistry_h
|
||
|
#define _testerregistry_h
|
||
|
|
||
|
/*** Include files ****************************************************************/
|
||
|
|
||
|
#define TESTERREGISTRY_ERROR_NONE (0) //!< no error
|
||
|
#define TESTERREGISTRY_ERROR_NOTINITIALIZED (-1) //!< create not called
|
||
|
#define TESTERREGISTRY_ERROR_NOSUCHENTRY (-2) //!< entry requested does not exist
|
||
|
#define TESTERREGISTRY_ERROR_OUTOFSPACE (-3) //!< no more room left in the registry
|
||
|
#define TESTERREGISTRY_ERROR_BADDATA (-4) //!< bad data passed to a function
|
||
|
|
||
|
/*** Defines **********************************************************************/
|
||
|
|
||
|
#define TESTERREGISTRY_SIZE_DEFAULT (4096) //!< default registry size
|
||
|
|
||
|
/*** Macros ***********************************************************************/
|
||
|
|
||
|
/*** Type Definitions *************************************************************/
|
||
|
|
||
|
/*** Variables ********************************************************************/
|
||
|
|
||
|
/*** Functions ********************************************************************/
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
// pass in a registry size, or (-1) for default size, allocates that much memory.
|
||
|
// calling create multiple times frees the previous registry (no leak)
|
||
|
void TesterRegistryCreate(int32_t iSize);
|
||
|
|
||
|
// set a registry entry - pointer
|
||
|
int32_t TesterRegistrySetPointer(const char *pEntryName, const void *pPtr);
|
||
|
// set a registry entry - number
|
||
|
int32_t TesterRegistrySetNumber(const char *pEntryName, const int32_t iNum);
|
||
|
// set a registry entry - string
|
||
|
int32_t TesterRegistrySetString(const char *pEntryName, const char *pStr);
|
||
|
|
||
|
// get a registry entry - pointer - return error code (0 for none)
|
||
|
void *TesterRegistryGetPointer(const char *pEntryName);
|
||
|
// get a registry entry - pointer - return error code (0 for none)
|
||
|
int32_t TesterRegistryGetNumber(const char *pEntryName, int32_t *pNum);
|
||
|
// get a registry entry - pointer - return error code (0 for none)
|
||
|
int32_t TesterRegistryGetString(const char *pEntryName, char *pBuf, int32_t iBufSize);
|
||
|
|
||
|
// print the registry
|
||
|
void TesterRegistryPrint(void);
|
||
|
|
||
|
// destroy a registry
|
||
|
void TesterRegistryDestroy(void);
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
};
|
||
|
#endif
|
||
|
|
||
|
#endif // _testerregistry_h
|
||
|
|