reman3/Rayman_X/cpa/public/SCR/SCR_Page.h

95 lines
3.5 KiB
C

/*
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
* SCR_Page.h
* Scripts, Beaudet Christophe
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
*
*/
#ifndef __SCR_Page_h__Types
#define __SCR_Page_h__Types
#ifndef __Only_Types__
#define __SCR_Page_h__Undef
#define __Only_Types__
#endif /* !__Only_Types__ */
/*
*=================================================================================================
* Includes.
*=================================================================================================
*/
#ifdef __SCR_Mode_h__Undef
#undef __Only_Types__
#undef __SCR_Mode_h__Undef
#endif /* __SCR_Mode_h__Undef */
/*
*=================================================================================================
* Constants.
*=================================================================================================
*/
/*
* To export code.
*/
#undef CPA_EXPORT
#if defined(CPA_WANTS_IMPORT)
#define CPA_EXPORT __declspec(dllimport)
#elif defined(CPA_WANTS_EXPORT)
#define CPA_EXPORT __declspec(dllexport)
#else /* CPA_WANTS_IMPORT */
#define CPA_EXPORT
#endif /* CPA_WANTS_IMPORT */
/*
*=================================================================================================
* Types.
*=================================================================================================
*/
/*
* Structure that describes a memory page.
*/
typedef struct SCR_tdst_Page_Description_
{
SCR_tdst_DyAr_Header stHeader; /* Header of element */
struct SCR_tdst_Page_Description_ *p_stNext; /* Next page */
struct SCR_tdst_Page_Description_ *p_stPrev; /* Previous page */
char *d_cBuffer; /* Buffer of page */
int iNumOfChars; /* Number of characters in page */
} SCR_tdst_Page_Description;
#endif /* !__SCR_Mode_h__Types */
/*
*=================================================================================================
* Protos.
*=================================================================================================
*/
#if !defined(__SCR_Page_h__Protos) && !defined(__Only_Types__)
#define __SCR_Page_h__Protos
extern SCR_tdst_Page_Description *fnp_st_Page_Allocate(void);
extern void fn_v_Page_Free(SCR_tdst_Page_Description *);
extern void fn_v_Page_DeleteAll(SCR_tdst_File_Description *);
extern void fn_v_Page_LinkAfter(SCR_tdst_File_Description *, SCR_tdst_Page_Description *, SCR_tdst_Page_Description *);
extern void fn_v_Page_Unlink(SCR_tdst_File_Description *, SCR_tdst_Page_Description *);
extern void fn_v_Page_Split(SCR_tdst_File_Description *, SCR_tdst_Page_Description *);
extern void fn_v_Page_InsertChar(SCR_tdst_File_Description *, char);
extern void fn_v_Page_DeleteChar(SCR_tdst_File_Description *);
extern void fn_v_Page_ToNextChar(SCR_tdst_File_Description *);
extern void fn_v_Page_ToPrevChar(SCR_tdst_File_Description *);
extern void fn_v_Page_LoadFile(SCR_tdst_File_Description *);
extern void fn_v_Page_SaveFile(SCR_tdst_File_Description *);
extern void fn_v_Page_Seek(SCR_tdst_File_Description *, long, int);
#endif /* !__SCR_Page_h__Protos && !__Only_Types__ */