summaryrefslogtreecommitdiffstats
path: root/include/freetype/fttypes.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/freetype/fttypes.h')
-rw-r--r--include/freetype/fttypes.h28
1 files changed, 19 insertions, 9 deletions
diff --git a/include/freetype/fttypes.h b/include/freetype/fttypes.h
index 3255527..027e59c 100644
--- a/include/freetype/fttypes.h
+++ b/include/freetype/fttypes.h
@@ -4,7 +4,7 @@
/* */
/* FreeType simple types definitions (specification only). */
/* */
-/* Copyright 1996-2002, 2004, 2006-2009, 2012 by */
+/* Copyright 1996-2002, 2004, 2006-2009, 2012, 2013 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -255,7 +255,7 @@ FT_BEGIN_HEADER
/* FT_F2Dot14 */
/* */
/* <Description> */
- /* A signed 2.14 fixed float type used for unit vectors. */
+ /* A signed 2.14 fixed-point type used for unit vectors. */
/* */
typedef signed short FT_F2Dot14;
@@ -266,7 +266,7 @@ FT_BEGIN_HEADER
/* FT_F26Dot6 */
/* */
/* <Description> */
- /* A signed 26.6 fixed float type used for vectorial pixel */
+ /* A signed 26.6 fixed-point type used for vectorial pixel */
/* coordinates. */
/* */
typedef signed long FT_F26Dot6;
@@ -278,7 +278,7 @@ FT_BEGIN_HEADER
/* FT_Fixed */
/* */
/* <Description> */
- /* This type is used to store 16.16 fixed float values, like scaling */
+ /* This type is used to store 16.16 fixed-point values, like scaling */
/* values or matrix coefficients. */
/* */
typedef signed long FT_Fixed;
@@ -362,7 +362,7 @@ FT_BEGIN_HEADER
/* */
/* <Description> */
/* A simple structure used to store a 2x2 matrix. Coefficients are */
- /* in 16.16 fixed float format. The computation performed is: */
+ /* in 16.16 fixed-point format. The computation performed is: */
/* */
/* { */
/* x' = x*xx + y*xy */
@@ -571,14 +571,24 @@ FT_BEGIN_HEADER
/* */
#define FT_IS_EMPTY( list ) ( (list).head == 0 )
+#define FT_BOOL( x ) ( (FT_Bool)( x ) )
- /* return base error code (without module-specific prefix) */
-#define FT_ERROR_BASE( x ) ( (x) & 0xFF )
+ /* concatenate C tokens */
+#define FT_ERR_XCAT( x, y ) x ## y
+#define FT_ERR_CAT( x, y ) FT_ERR_XCAT( x, y )
+
+ /* see `ftmoderr.h' for descriptions of the following macros */
+
+#define FT_ERR( e ) FT_ERR_CAT( FT_ERR_PREFIX, e )
- /* return module error code */
+#define FT_ERROR_BASE( x ) ( (x) & 0xFF )
#define FT_ERROR_MODULE( x ) ( (x) & 0xFF00U )
-#define FT_BOOL( x ) ( (FT_Bool)( x ) )
+#define FT_ERR_EQ( x, e ) \
+ ( FT_ERROR_BASE( x ) == FT_ERROR_BASE( FT_ERR( e ) ) )
+#define FT_ERR_NEQ( x, e ) \
+ ( FT_ERROR_BASE( x ) != FT_ERROR_BASE( FT_ERR( e ) ) )
+
FT_END_HEADER