Formatting.

This commit is contained in:
Werner Lemberg 2001-06-19 09:11:18 +00:00
parent 3d2be25ba1
commit 8ec0b130d8
1 changed files with 192 additions and 166 deletions

View File

@ -25,22 +25,25 @@
FT_BEGIN_HEADER
/**************************************************************************
*
* <Section> system_interface
*
* <Title> System Interface
*
* <Abstract>
* How FreeType manages memory and i/o
*
* <Description>
* This section contains various definitions related to memory
* management and i/o access. You'll need to understand this
* information if you want to use a custom memory manager or
* you own input i/o streams
*
*/
/*************************************************************************/
/* */
/* <Section> */
/* system_interface */
/* */
/* <Title> */
/* System Interface */
/* */
/* <Abstract> */
/* How FreeType manages memory and i/o. */
/* */
/* <Description> */
/* This section contains various definitions related to memory */
/* management and i/o access. You need to understand this */
/* information if you want to use a custom memory manager or you own */
/* input i/o streams. */
/* */
/*************************************************************************/
/*************************************************************************/
/* */
@ -48,89 +51,103 @@ FT_BEGIN_HEADER
/* */
/*************************************************************************/
/**********************************************************************
*
* @type: FT_Memory
*
* @description:
* a handle to a given memory manager object, defined with a
* @FT_MemoryRec structure.
*/
/*************************************************************************/
/* */
/* @type: */
/* FT_Memory */
/* */
/* @description: */
/* A handle to a given memory manager object, defined with a */
/* @FT_MemoryRec structure. */
/* */
typedef struct FT_MemoryRec_* FT_Memory;
/**********************************************************************
*
* @functype: FT_Alloc_Func
*
* @description:
* a function used to allocate "size" bytes from "memory"
*
* @input:
* memory :: handle to source memory manager
* size :: size in bytes to allocate
*
* @return:
* address of new memory block. 0 in case of failure
*/
/*************************************************************************/
/* */
/* @functype: */
/* FT_Alloc_Func */
/* */
/* @description: */
/* A function used to allocate `size' bytes from `memory'. */
/* */
/* @input: */
/* memory :: A handle to the source memory manager. */
/* */
/* size :: The size in bytes to allocate. */
/* */
/* @return: */
/* Address of new memory block. 0 in case of failure. */
/* */
typedef void* (*FT_Alloc_Func)( FT_Memory memory,
long size );
/**********************************************************************
*
* @functype: FT_Free_Func
*
* @description:
* a function used to release a given block of memory
*
* @input:
* memory :: handle to source memory manager
* block :: address of target memory block
*/
/*************************************************************************/
/* */
/* @functype: */
/* FT_Free_Func */
/* */
/* @description: */
/* A function used to release a given block of memory. */
/* */
/* @input: */
/* memory :: A handle to the source memory manager. */
/* */
/* block :: The address of the target memory block. */
/* */
typedef void (*FT_Free_Func)( FT_Memory memory,
void* block );
/**********************************************************************
*
* @functype: FT_Realloc_Func
*
* @description:
* a function used to re-allocate a given block of memory
*
* @input:
* memory :: handle to source memory manager
* cur_size :: the block's current size in bytes
* new_size :: the block's requested new size
* block :: the block's current address
*
* @return:
* new block address. 0 in case of memory shortage.
*
* @note:
* note that in case of error, the old block must still be available
*/
/*************************************************************************/
/* */
/* @functype: */
/* FT_Realloc_Func */
/* */
/* @description: */
/* a function used to re-allocate a given block of memory. */
/* */
/* @input: */
/* memory :: A handle to the source memory manager. */
/* */
/* cur_size :: The block's current size in bytes. */
/* */
/* new_size :: The block's requested new size. */
/* */
/* block :: The block's current address. */
/* */
/* @return: */
/* New block address. 0 in case of memory shortage. */
/* */
/* @note: */
/* In case of error, the old block must still be available. */
/* */
typedef void* (*FT_Realloc_Func)( FT_Memory memory,
long cur_size,
long new_size,
void* block );
/**********************************************************************
*
* @struct: FT_MemoryRec
*
* @description:
* a structure used to describe a given memory manager to FreeType 2
*
* @fields:
* user ::
* alloc ::
* free ::
* realloc ::
*
*/
struct FT_MemoryRec_
/*************************************************************************/
/* */
/* @struct: */
/* FT_MemoryRec */
/* */
/* @description: */
/* A structure used to describe a given memory manager to FreeType 2. */
/* */
/* @fields: */
/* user :: A generic typeless pointer for user data. */
/* */
/* alloc :: A pointer type to an allocation function. */
/* */
/* free :: A pointer type to an memory freeing function. */
/* */
/* realloc :: A pointer type to a reallocation function. */
/* */
struct FT_MemoryRec_
{
void* user;
FT_Alloc_Func alloc;
@ -146,26 +163,26 @@ FT_BEGIN_HEADER
/*************************************************************************/
/************************************************************************
*
* @type: FT_Stream
*
* @description:
* a handle to an input stream.
*/
/*************************************************************************/
/* */
/* @type: */
/* FT_Stream */
/* */
/* @description: */
/* A handle to an input stream. */
/* */
typedef struct FT_StreamRec_* FT_Stream;
/************************************************************************
*
* @struct: FT_StreamDesc
*
* @description:
* a union type used to store either a long or a pointer. This is
* used to store a file descriptor or a FILE* in an input stream
*
*/
/*************************************************************************/
/* */
/* @struct: */
/* FT_StreamDesc */
/* */
/* @description: */
/* A union type used to store either a long or a pointer. This is */
/* used to store a file descriptor or a FILE* in an input stream. */
/* */
typedef union FT_StreamDesc_
{
long value;
@ -174,80 +191,89 @@ FT_BEGIN_HEADER
} FT_StreamDesc;
/************************************************************************
*
* @functype: FT_Stream_IO
*
* @description:
* a function used to seek and read data from a given input stream
*
* @input:
* stream :: handle to source stream
* offset :: offset of read in stream (always from start)
* buffer :: address of read buffer
* count :: number of bytes to read from the stream
*
* @return:
* number of bytes effectively read by the stream
*
* @note:
* this function might be called to perform seek / skip with
* a "count" of 0
*/
/*************************************************************************/
/* */
/* @functype: */
/* FT_Stream_IO */
/* */
/* @description: */
/* A function used to seek and read data from a given input stream. */
/* */
/* @input: */
/* stream :: A handle to the source stream. */
/* */
/* offset :: The offset of read in stream (always from start). */
/* */
/* buffer :: The address of the read buffer. */
/* */
/* count :: The number of bytes to read from the stream. */
/* */
/* @return: */
/* The number of bytes effectively read by the stream. */
/* */
/* @note: */
/* This function might be called to perform a seek or skip operation */
/* with a `count' of 0. */
/* */
typedef unsigned long (*FT_Stream_IO)( FT_Stream stream,
unsigned long offset,
unsigned char* buffer,
unsigned long count );
/************************************************************************
*
* @functype: FT_Stream_Close
*
* @description:
* a function used to close a given input stream
*
* @input:
* stream :: handle to target stream
*/
/*************************************************************************/
/* */
/* @functype: */
/* FT_Stream_Close */
/* */
/* @description: */
/* A function used to close a given input stream. */
/* */
/* @input: */
/* stream :: A handle to the target stream. */
/* */
typedef void (*FT_Stream_Close)( FT_Stream stream );
/************************************************************************
*
* @struct: FT_StreamRec
*
* @description:
* a structure used to describe an input stream
*
* @input:
* base :: for memory-based stream, this is the address of the first
* stream byte in memory. this field should always be set to
* NULL for disk-based streams.
*
* size :: the stream size in bytes
* pos :: the current position within the stream
*
* descriptor :: this field is a union that can hold an integer or a pointer
* it is used by stream implementations to store file
* descriptors or FILE* pointers..
*
* pathname :: this field is completely ignored by FreeType, however,
* it's often useful during debugging to use it to store
* the stream's filename, where available
*
* read :: the stream's input function
* close :: the stream close function
*
* memory :: memory manager to use to preload frames. this is set
* internally by FreeType and shouldn't be touched by
* stream implementations
*
* cursor :: this field is set and used internally by FreeType
* when parsing frames.
*
* limit :: this field is set and used internally by FreeType
* when parsing frames.
*/
/*************************************************************************/
/* */
/* @struct: */
/* FT_StreamRec */
/* */
/* @description: */
/* A structure used to describe an input stream. */
/* */
/* @input: */
/* base :: For memory-based streams, this is the address of the */
/* first stream byte in memory. This field should */
/* always be set to NULL for disk-based streams. */
/* */
/* size :: The stream size in bytes. */
/* */
/* pos :: The current position within the stream. */
/* */
/* descriptor :: This field is a union that can hold an integer or a */
/* pointer. It is used by stream implementations to */
/* store file descriptors or FILE* pointers. */
/* */
/* pathname :: This field is completely ignored by FreeType. */
/* However, it is often useful during debugging to use */
/* it to store the stream's filename (where available). */
/* */
/* read :: The stream's input function. */
/* */
/* close :: The stream;s close function. */
/* */
/* memory :: The memory manager to use to preload frames. This is */
/* set internally by FreeType and shouldn't be touched */
/* by stream implementations. */
/* */
/* cursor :: This field is set and used internally by FreeType */
/* when parsing frames. */
/* */
/* limit :: This field is set and used internally by FreeType */
/* when parsing frames. */
/* */
struct FT_StreamRec_
{
unsigned char* base;