/src/compiler/android-ndk/jni/freetype/src/raster/ftmisc.h
http://ftk.googlecode.com/ · C++ Header · 109 lines · 52 code · 29 blank · 28 comment · 3 complexity · 462642010e4240d9d9f09ce5bcbb9e6f MD5 · raw file
- /***************************************************************************/
- /* */
- /* ftmisc.h */
- /* */
- /* Miscellaneous macros for stand-alone rasterizer (specification */
- /* only). */
- /* */
- /* Copyright 2005, 2009 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. */
- /* */
- /***************************************************************************/
- /***************************************************/
- /* */
- /* This file is *not* portable! You have to adapt */
- /* its definitions to your platform. */
- /* */
- /***************************************************/
- #ifndef __FTMISC_H__
- #define __FTMISC_H__
- /* memset */
- #include FT_CONFIG_STANDARD_LIBRARY_H
- #define FT_BEGIN_HEADER
- #define FT_END_HEADER
- #define FT_LOCAL_DEF( x ) static x
- /* from include/freetype2/fttypes.h */
- typedef unsigned char FT_Byte;
- typedef signed int FT_Int;
- typedef unsigned int FT_UInt;
- typedef signed long FT_Long;
- typedef unsigned long FT_ULong;
- typedef signed long FT_F26Dot6;
- typedef int FT_Error;
- #define FT_MAKE_TAG( _x1, _x2, _x3, _x4 ) \
- ( ( (FT_ULong)_x1 << 24 ) | \
- ( (FT_ULong)_x2 << 16 ) | \
- ( (FT_ULong)_x3 << 8 ) | \
- (FT_ULong)_x4 )
- /* from include/freetype2/ftsystem.h */
- typedef struct FT_MemoryRec_* FT_Memory;
- typedef void* (*FT_Alloc_Func)( FT_Memory memory,
- long size );
- typedef void (*FT_Free_Func)( FT_Memory memory,
- void* block );
- typedef void* (*FT_Realloc_Func)( FT_Memory memory,
- long cur_size,
- long new_size,
- void* block );
- typedef struct FT_MemoryRec_
- {
- void* user;
- FT_Alloc_Func alloc;
- FT_Free_Func free;
- FT_Realloc_Func realloc;
- } FT_MemoryRec;
- /* from src/ftcalc.c */
- #include <inttypes.h>
- typedef int64_t FT_Int64;
- static FT_Long
- FT_MulDiv( FT_Long a,
- FT_Long b,
- FT_Long c )
- {
- FT_Int s;
- FT_Long d;
- s = 1;
- if ( a < 0 ) { a = -a; s = -1; }
- if ( b < 0 ) { b = -b; s = -s; }
- if ( c < 0 ) { c = -c; s = -s; }
- d = (FT_Long)( c > 0 ? ( (FT_Int64)a * b + ( c >> 1 ) ) / c
- : 0x7FFFFFFFL );
- return ( s > 0 ) ? d : -d;
- }
- #endif /* __FTMISC_H__ */
- /* END */