#ifndef FTSTREAM_H_
#define FTSTREAM_H_
#include <ft2build.h>
#include <freetype/ftsystem.h>
#include <freetype/internal/ftobjs.h>
FT_BEGIN_HEADER
#define FT_FRAME_OP_SHIFT …
#define FT_FRAME_OP_SIGNED …
#define FT_FRAME_OP_LITTLE …
#define FT_FRAME_OP_COMMAND( x ) …
#define FT_MAKE_FRAME_OP( command, little, sign ) …
#define FT_FRAME_OP_END …
#define FT_FRAME_OP_START …
#define FT_FRAME_OP_BYTE …
#define FT_FRAME_OP_SHORT …
#define FT_FRAME_OP_LONG …
#define FT_FRAME_OP_OFF3 …
#define FT_FRAME_OP_BYTES …
FT_Frame_Op;
FT_Frame_Field;
#define FT_FIELD_SIZE( f ) …
#define FT_FIELD_SIZE_DELTA( f ) …
#define FT_FIELD_OFFSET( f ) …
#define FT_FRAME_FIELD( frame_op, field ) …
#define FT_MAKE_EMPTY_FIELD( frame_op ) …
#define FT_FRAME_START( size ) …
#define FT_FRAME_END …
#define FT_FRAME_LONG( f ) …
#define FT_FRAME_ULONG( f ) …
#define FT_FRAME_SHORT( f ) …
#define FT_FRAME_USHORT( f ) …
#define FT_FRAME_OFF3( f ) …
#define FT_FRAME_UOFF3( f ) …
#define FT_FRAME_BYTE( f ) …
#define FT_FRAME_CHAR( f ) …
#define FT_FRAME_LONG_LE( f ) …
#define FT_FRAME_ULONG_LE( f ) …
#define FT_FRAME_SHORT_LE( f ) …
#define FT_FRAME_USHORT_LE( f ) …
#define FT_FRAME_OFF3_LE( f ) …
#define FT_FRAME_UOFF3_LE( f ) …
#define FT_FRAME_SKIP_LONG …
#define FT_FRAME_SKIP_SHORT …
#define FT_FRAME_SKIP_BYTE …
#define FT_FRAME_BYTES( field, count ) …
#define FT_FRAME_SKIP_BYTES( count ) …
#define FT_BYTE_( p, i ) …
#define FT_INT16( x ) …
#define FT_UINT16( x ) …
#define FT_INT32( x ) …
#define FT_UINT32( x ) …
#define FT_BYTE_U16( p, i, s ) …
#define FT_BYTE_U32( p, i, s ) …
#define FT_PEEK_SHORT( p ) …
#define FT_PEEK_USHORT( p ) …
#define FT_PEEK_LONG( p ) …
#define FT_PEEK_ULONG( p ) …
#define FT_PEEK_OFF3( p ) …
#define FT_PEEK_UOFF3( p ) …
#define FT_PEEK_SHORT_LE( p ) …
#define FT_PEEK_USHORT_LE( p ) …
#define FT_PEEK_LONG_LE( p ) …
#define FT_PEEK_ULONG_LE( p ) …
#define FT_PEEK_OFF3_LE( p ) …
#define FT_PEEK_UOFF3_LE( p ) …
#define FT_NEXT_CHAR( buffer ) …
#define FT_NEXT_BYTE( buffer ) …
#define FT_NEXT_SHORT( buffer ) …
#define FT_NEXT_USHORT( buffer ) …
#define FT_NEXT_OFF3( buffer ) …
#define FT_NEXT_UOFF3( buffer ) …
#define FT_NEXT_LONG( buffer ) …
#define FT_NEXT_ULONG( buffer ) …
#define FT_NEXT_SHORT_LE( buffer ) …
#define FT_NEXT_USHORT_LE( buffer ) …
#define FT_NEXT_OFF3_LE( buffer ) …
#define FT_NEXT_UOFF3_LE( buffer ) …
#define FT_NEXT_LONG_LE( buffer ) …
#define FT_NEXT_ULONG_LE( buffer ) …
#if 0
#define FT_GET_MACRO …
#define FT_GET_CHAR …
#define FT_GET_BYTE …
#define FT_GET_SHORT …
#define FT_GET_USHORT …
#define FT_GET_OFF3 …
#define FT_GET_UOFF3 …
#define FT_GET_LONG …
#define FT_GET_ULONG …
#define FT_GET_TAG4 …
#define FT_GET_SHORT_LE …
#define FT_GET_USHORT_LE …
#define FT_GET_LONG_LE …
#define FT_GET_ULONG_LE …
#else
#define FT_GET_MACRO( func, type ) …
#define FT_GET_CHAR() …
#define FT_GET_BYTE() …
#define FT_GET_SHORT() …
#define FT_GET_USHORT() …
#define FT_GET_UOFF3() …
#define FT_GET_LONG() …
#define FT_GET_ULONG() …
#define FT_GET_TAG4() …
#define FT_GET_SHORT_LE() …
#define FT_GET_USHORT_LE() …
#define FT_GET_LONG_LE() …
#define FT_GET_ULONG_LE() …
#endif
#define FT_READ_MACRO( func, type, var ) …
#define FT_READ_BYTE( var ) …
#define FT_READ_CHAR( var ) …
#define FT_READ_SHORT( var ) …
#define FT_READ_USHORT( var ) …
#define FT_READ_UOFF3( var ) …
#define FT_READ_LONG( var ) …
#define FT_READ_ULONG( var ) …
#define FT_READ_SHORT_LE( var ) …
#define FT_READ_USHORT_LE( var ) …
#define FT_READ_LONG_LE( var ) …
#define FT_READ_ULONG_LE( var ) …
#ifndef FT_CONFIG_OPTION_NO_DEFAULT_SYSTEM
FT_BASE( FT_Error )
FT_Stream_Open( FT_Stream stream,
const char* filepathname );
#endif
FT_BASE( FT_Error )
FT_Stream_New( FT_Library library,
const FT_Open_Args* args,
FT_Stream *astream );
FT_BASE( void )
FT_Stream_Free( FT_Stream stream,
FT_Int external );
FT_BASE( void )
FT_Stream_OpenMemory( FT_Stream stream,
const FT_Byte* base,
FT_ULong size );
FT_BASE( void )
FT_Stream_Close( FT_Stream stream );
FT_BASE( FT_Error )
FT_Stream_Seek( FT_Stream stream,
FT_ULong pos );
FT_BASE( FT_Error )
FT_Stream_Skip( FT_Stream stream,
FT_Long distance );
FT_BASE( FT_ULong )
FT_Stream_Pos( FT_Stream stream );
FT_BASE( FT_Error )
FT_Stream_Read( FT_Stream stream,
FT_Byte* buffer,
FT_ULong count );
FT_BASE( FT_Error )
FT_Stream_ReadAt( FT_Stream stream,
FT_ULong pos,
FT_Byte* buffer,
FT_ULong count );
FT_BASE( FT_ULong )
FT_Stream_TryRead( FT_Stream stream,
FT_Byte* buffer,
FT_ULong count );
FT_BASE( FT_Error )
FT_Stream_EnterFrame( FT_Stream stream,
FT_ULong count );
FT_BASE( void )
FT_Stream_ExitFrame( FT_Stream stream );
FT_BASE( FT_Error )
FT_Stream_ExtractFrame( FT_Stream stream,
FT_ULong count,
FT_Byte** pbytes );
FT_BASE( void )
FT_Stream_ReleaseFrame( FT_Stream stream,
FT_Byte** pbytes );
FT_BASE( FT_Byte )
FT_Stream_GetByte( FT_Stream stream );
FT_BASE( FT_UInt16 )
FT_Stream_GetUShort( FT_Stream stream );
FT_BASE( FT_UInt32 )
FT_Stream_GetUOffset( FT_Stream stream );
FT_BASE( FT_UInt32 )
FT_Stream_GetULong( FT_Stream stream );
FT_BASE( FT_UInt16 )
FT_Stream_GetUShortLE( FT_Stream stream );
FT_BASE( FT_UInt32 )
FT_Stream_GetULongLE( FT_Stream stream );
FT_BASE( FT_Byte )
FT_Stream_ReadByte( FT_Stream stream,
FT_Error* error );
FT_BASE( FT_UInt16 )
FT_Stream_ReadUShort( FT_Stream stream,
FT_Error* error );
FT_BASE( FT_ULong )
FT_Stream_ReadUOffset( FT_Stream stream,
FT_Error* error );
FT_BASE( FT_UInt32 )
FT_Stream_ReadULong( FT_Stream stream,
FT_Error* error );
FT_BASE( FT_UInt16 )
FT_Stream_ReadUShortLE( FT_Stream stream,
FT_Error* error );
FT_BASE( FT_UInt32 )
FT_Stream_ReadULongLE( FT_Stream stream,
FT_Error* error );
FT_BASE( FT_Error )
FT_Stream_ReadFields( FT_Stream stream,
const FT_Frame_Field* fields,
void* structure );
#define FT_STREAM_POS() …
#define FT_STREAM_SEEK( position ) …
#define FT_STREAM_SKIP( distance ) …
#define FT_STREAM_READ( buffer, count ) …
#define FT_STREAM_READ_AT( position, buffer, count ) …
#define FT_STREAM_READ_FIELDS( fields, object ) …
#define FT_FRAME_ENTER( size ) …
#define FT_FRAME_EXIT() …
#define FT_FRAME_EXTRACT( size, bytes ) …
#define FT_FRAME_RELEASE( bytes ) …
FT_END_HEADER
#endif