Content-type: text/html Manpage of FT_Free

FT_Free

Section: Misc. Reference Manual Pages (3)
Index Return to Main Contents
 

NAME

FT_Free  

DESCRIPTION

Releases a given block of memory allocated through FT_Alloc().

Input:

memory :: A handle to a given `memory object' which handles memory deallocation

P :: This is the _address_ of a _pointer_ which points to the allocated block. It is always set to NULL on exit. Releases a given block of memory allocated through FT_Alloc().

Input:

memory :: A handle to a given `memory object' which handles memory deallocation

P :: This is the _address_ of a _pointer_ which points to the allocated block. It is always set to NULL on exit.

Notes: If P or *P are NULL, this function should return successfully. This is a strong convention within all of FreeType and its drivers. FT_BASE( void ) FT_Free( FT_Memory memory, void** P ); This `#include' is needed by the MEM_xxx() macros; it should be available on all platforms we know of. #include #define MEM_Set( dest, byte, count ) memset( dest, byte, count ) #define MEM_Copy( dest, source, count ) memcpy( dest, source, count ) #define MEM_Move( dest, source, count ) memmove( dest, source, count ) We now support closures to produce completely reentrant code. This means the allocation functions now takes an additional argument (`memory'). It is a handle to a given memory object, responsible for all low-level operations, including memory management and synchronisation. In order to keep our code readable and use the same macros in the font drivers and the rest of the library, MEM_Alloc(), ALLOC(), and ALLOC_ARRAY() now use an implicit variable, `memory'. It must be defined at all locations where a memory operation is queried. #define MEM_Alloc( _pointer_, _size_ )   FT_Alloc( memory, _size_, (void**)&(_pointer_) ) #define MEM_Alloc_Array( _pointer_, _count_, _type_ )   FT_Alloc( memory, (_count_)*sizeof ( _type_ ),   (void**)&(_pointer_) ) #define MEM_Realloc( _pointer_, _current_, _size_ )   FT_Realloc( memory, _current_, _size_, (void**)&(_pointer_) ) #define MEM_Realloc_Array( _pointer_, _current_, _new_, _type_ )   FT_Realloc( memory, (_current_)*sizeof ( _type_ ),   (_new_)*sizeof ( _type_ ), (void**)&(_pointer_) ) #define ALLOC( _pointer_, _size_ )   FT_SET_ERROR( MEM_Alloc( _pointer_, _size_ ) ) #define REALLOC( _pointer_, _current_, _size_ )   FT_SET_ERROR( MEM_Realloc( _pointer_, _current_, _size_ ) ) #define ALLOC_ARRAY( _pointer_, _count_, _type_ )   FT_SET_ERROR( MEM_Alloc( _pointer_,   (_count_)*sizeof ( _type_ ) ) ) #define REALLOC_ARRAY( _pointer_, _current_, _count_, _type_ )   FT_SET_ERROR( MEM_Realloc( _pointer_,   (_current_)*sizeof ( _type_ ),   (_count_)*sizeof ( _type_ ) ) ) #define FREE( _pointer_ ) FT_Free( memory, (void**)&(_pointer_) ) FT_END_HEADER #endif __FTMEMORY_H__ END  

RETURNS

FreeType error code. 0 means success.  

VERSION

This documentation was generated for Freetype 2.0.4 by autodocbook (http://www.stillhq.com). Autodocbook is (c) Michael Still 2001.
      

AUTHOR

Copyright 1996-2000 by David Turner, Robert Wilhelm, and Werner Lemberg.
    

This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully.  

BUGS

Please report errors in this documentation, and Freetype itself to freetype@freetype.org


 

Index

NAME
DESCRIPTION
RETURNS
VERSION
AUTHOR
BUGS

This document was created by man2html, using the manual pages.
Time: 04:44:36 GMT, July 26, 2001