ReactOS  0.4.15-dev-3163-gf17c2c0
ftgxval.h File Reference
#include <ft2build.h>
Include dependency graph for ftgxval.h:

Go to the source code of this file.

Macros

#define FT_VALIDATE_feat_INDEX   0
 
#define FT_VALIDATE_mort_INDEX   1
 
#define FT_VALIDATE_morx_INDEX   2
 
#define FT_VALIDATE_bsln_INDEX   3
 
#define FT_VALIDATE_just_INDEX   4
 
#define FT_VALIDATE_kern_INDEX   5
 
#define FT_VALIDATE_opbd_INDEX   6
 
#define FT_VALIDATE_trak_INDEX   7
 
#define FT_VALIDATE_prop_INDEX   8
 
#define FT_VALIDATE_lcar_INDEX   9
 
#define FT_VALIDATE_GX_LAST_INDEX   FT_VALIDATE_lcar_INDEX
 
#define FT_VALIDATE_GX_LENGTH   ( FT_VALIDATE_GX_LAST_INDEX + 1 )
 
#define FT_VALIDATE_GX_START   0x4000
 
#define FT_VALIDATE_GX_BITFIELD(tag)   ( FT_VALIDATE_GX_START << FT_VALIDATE_##tag##_INDEX )
 
#define FT_VALIDATE_feat   FT_VALIDATE_GX_BITFIELD( feat )
 
#define FT_VALIDATE_mort   FT_VALIDATE_GX_BITFIELD( mort )
 
#define FT_VALIDATE_morx   FT_VALIDATE_GX_BITFIELD( morx )
 
#define FT_VALIDATE_bsln   FT_VALIDATE_GX_BITFIELD( bsln )
 
#define FT_VALIDATE_just   FT_VALIDATE_GX_BITFIELD( just )
 
#define FT_VALIDATE_kern   FT_VALIDATE_GX_BITFIELD( kern )
 
#define FT_VALIDATE_opbd   FT_VALIDATE_GX_BITFIELD( opbd )
 
#define FT_VALIDATE_trak   FT_VALIDATE_GX_BITFIELD( trak )
 
#define FT_VALIDATE_prop   FT_VALIDATE_GX_BITFIELD( prop )
 
#define FT_VALIDATE_lcar   FT_VALIDATE_GX_BITFIELD( lcar )
 
#define FT_VALIDATE_GX
 
#define FT_VALIDATE_MS   ( FT_VALIDATE_GX_START << 0 )
 
#define FT_VALIDATE_APPLE   ( FT_VALIDATE_GX_START << 1 )
 
#define FT_VALIDATE_CKERN   ( FT_VALIDATE_MS | FT_VALIDATE_APPLE )
 

Functions

 FT_TrueTypeGX_Validate (FT_Face face, FT_UInt validation_flags, FT_Bytes tables[FT_VALIDATE_GX_LENGTH], FT_UInt table_length)
 
 FT_TrueTypeGX_Free (FT_Face face, FT_Bytes table)
 
 FT_ClassicKern_Validate (FT_Face face, FT_UInt validation_flags, FT_Bytes *ckern_table)
 
 FT_ClassicKern_Free (FT_Face face, FT_Bytes table)
 

Macro Definition Documentation

◆ FT_VALIDATE_APPLE

#define FT_VALIDATE_APPLE   ( FT_VALIDATE_GX_START << 1 )

Definition at line 279 of file ftgxval.h.

◆ FT_VALIDATE_bsln

#define FT_VALIDATE_bsln   FT_VALIDATE_GX_BITFIELD( bsln )

Definition at line 164 of file ftgxval.h.

◆ FT_VALIDATE_bsln_INDEX

#define FT_VALIDATE_bsln_INDEX   3

Definition at line 85 of file ftgxval.h.

◆ FT_VALIDATE_CKERN

#define FT_VALIDATE_CKERN   ( FT_VALIDATE_MS | FT_VALIDATE_APPLE )

Definition at line 281 of file ftgxval.h.

◆ FT_VALIDATE_feat

#define FT_VALIDATE_feat   FT_VALIDATE_GX_BITFIELD( feat )

Definition at line 161 of file ftgxval.h.

◆ FT_VALIDATE_feat_INDEX

#define FT_VALIDATE_feat_INDEX   0

Definition at line 82 of file ftgxval.h.

◆ FT_VALIDATE_GX

#define FT_VALIDATE_GX
Value:
FT_VALIDATE_mort | \
FT_VALIDATE_morx | \
FT_VALIDATE_bsln | \
FT_VALIDATE_just | \
FT_VALIDATE_kern | \
FT_VALIDATE_opbd | \
FT_VALIDATE_trak | \
FT_VALIDATE_prop | \
FT_VALIDATE_lcar )
#define FT_VALIDATE_feat
Definition: ftgxval.h:161

Definition at line 172 of file ftgxval.h.

◆ FT_VALIDATE_GX_BITFIELD

#define FT_VALIDATE_GX_BITFIELD (   tag)    ( FT_VALIDATE_GX_START << FT_VALIDATE_##tag##_INDEX )

Definition at line 111 of file ftgxval.h.

◆ FT_VALIDATE_GX_LAST_INDEX

#define FT_VALIDATE_GX_LAST_INDEX   FT_VALIDATE_lcar_INDEX

Definition at line 92 of file ftgxval.h.

◆ FT_VALIDATE_GX_LENGTH

#define FT_VALIDATE_GX_LENGTH   ( FT_VALIDATE_GX_LAST_INDEX + 1 )

Definition at line 104 of file ftgxval.h.

◆ FT_VALIDATE_GX_START

#define FT_VALIDATE_GX_START   0x4000

Definition at line 110 of file ftgxval.h.

◆ FT_VALIDATE_just

#define FT_VALIDATE_just   FT_VALIDATE_GX_BITFIELD( just )

Definition at line 165 of file ftgxval.h.

◆ FT_VALIDATE_just_INDEX

#define FT_VALIDATE_just_INDEX   4

Definition at line 86 of file ftgxval.h.

◆ FT_VALIDATE_kern

#define FT_VALIDATE_kern   FT_VALIDATE_GX_BITFIELD( kern )

Definition at line 166 of file ftgxval.h.

◆ FT_VALIDATE_kern_INDEX

#define FT_VALIDATE_kern_INDEX   5

Definition at line 87 of file ftgxval.h.

◆ FT_VALIDATE_lcar

#define FT_VALIDATE_lcar   FT_VALIDATE_GX_BITFIELD( lcar )

Definition at line 170 of file ftgxval.h.

◆ FT_VALIDATE_lcar_INDEX

#define FT_VALIDATE_lcar_INDEX   9

Definition at line 91 of file ftgxval.h.

◆ FT_VALIDATE_mort

#define FT_VALIDATE_mort   FT_VALIDATE_GX_BITFIELD( mort )

Definition at line 162 of file ftgxval.h.

◆ FT_VALIDATE_mort_INDEX

#define FT_VALIDATE_mort_INDEX   1

Definition at line 83 of file ftgxval.h.

◆ FT_VALIDATE_morx

#define FT_VALIDATE_morx   FT_VALIDATE_GX_BITFIELD( morx )

Definition at line 163 of file ftgxval.h.

◆ FT_VALIDATE_morx_INDEX

#define FT_VALIDATE_morx_INDEX   2

Definition at line 84 of file ftgxval.h.

◆ FT_VALIDATE_MS

#define FT_VALIDATE_MS   ( FT_VALIDATE_GX_START << 0 )

Definition at line 278 of file ftgxval.h.

◆ FT_VALIDATE_opbd

#define FT_VALIDATE_opbd   FT_VALIDATE_GX_BITFIELD( opbd )

Definition at line 167 of file ftgxval.h.

◆ FT_VALIDATE_opbd_INDEX

#define FT_VALIDATE_opbd_INDEX   6

Definition at line 88 of file ftgxval.h.

◆ FT_VALIDATE_prop

#define FT_VALIDATE_prop   FT_VALIDATE_GX_BITFIELD( prop )

Definition at line 169 of file ftgxval.h.

◆ FT_VALIDATE_prop_INDEX

#define FT_VALIDATE_prop_INDEX   8

Definition at line 90 of file ftgxval.h.

◆ FT_VALIDATE_trak

#define FT_VALIDATE_trak   FT_VALIDATE_GX_BITFIELD( trak )

Definition at line 168 of file ftgxval.h.

◆ FT_VALIDATE_trak_INDEX

#define FT_VALIDATE_trak_INDEX   7

Definition at line 89 of file ftgxval.h.

Function Documentation

◆ FT_ClassicKern_Free()

FT_ClassicKern_Free ( FT_Face  face,
FT_Bytes  table 
)

Definition at line 126 of file ftgxval.c.

128  {
130 
131 
132  if ( !face )
133  return;
134 
136 
137 
138  FT_FREE( table );
139  }
static char memory[1024 *256]
Definition: process.c:116
#define FT_FREE(ptr)
Definition: ftmemory.h:329
typedefFT_BEGIN_HEADER struct FT_MemoryRec_ * FT_Memory
Definition: ftsystem.h:66
#define FT_FACE_MEMORY(x)
Definition: ftobjs.h:636
GLenum GLuint GLint GLenum face
Definition: glext.h:7025

◆ FT_ClassicKern_Validate()

FT_ClassicKern_Validate ( FT_Face  face,
FT_UInt  validation_flags,
FT_Bytes ckern_table 
)

Definition at line 91 of file ftgxval.c.

94  {
95  FT_Service_CKERNvalidate service;
97 
98 
99  if ( !face )
100  {
101  error = FT_THROW( Invalid_Face_Handle );
102  goto Exit;
103  }
104 
105  if ( !ckern_table )
106  {
107  error = FT_THROW( Invalid_Argument );
108  goto Exit;
109  }
110 
111  FT_FACE_FIND_GLOBAL_SERVICE( face, service, CLASSICKERN_VALIDATE );
112 
113  if ( service )
114  error = service->validate( face,
115  validation_flags,
116  ckern_table );
117  else
118  error = FT_THROW( Unimplemented_Feature );
119 
120  Exit:
121  return error;
122  }
int FT_Error
Definition: fttypes.h:300
#define error(str)
Definition: mkdosfs.c:1605
#define FT_FACE_FIND_GLOBAL_SERVICE(face, ptr, id)
Definition: ftserv.h:125
#define FT_THROW(e)
Definition: ftdebug.h:213
static void Exit(void)
Definition: sock.c:1331
GLenum GLuint GLint GLenum face
Definition: glext.h:7025

◆ FT_TrueTypeGX_Free()

FT_TrueTypeGX_Free ( FT_Face  face,
FT_Bytes  table 
)

Definition at line 75 of file ftgxval.c.

77  {
79 
80 
81  if ( !face )
82  return;
83 
85 
86  FT_FREE( table );
87  }
static char memory[1024 *256]
Definition: process.c:116
#define FT_FREE(ptr)
Definition: ftmemory.h:329
typedefFT_BEGIN_HEADER struct FT_MemoryRec_ * FT_Memory
Definition: ftsystem.h:66
#define FT_FACE_MEMORY(x)
Definition: ftobjs.h:636
GLenum GLuint GLint GLenum face
Definition: glext.h:7025

◆ FT_TrueTypeGX_Validate()

FT_TrueTypeGX_Validate ( FT_Face  face,
FT_UInt  validation_flags,
FT_Bytes  tables[FT_VALIDATE_GX_LENGTH],
FT_UInt  table_length 
)

Definition at line 38 of file ftgxval.c.

42  {
43  FT_Service_GXvalidate service;
45 
46 
47  if ( !face )
48  {
49  error = FT_THROW( Invalid_Face_Handle );
50  goto Exit;
51  }
52 
53  if ( !tables )
54  {
55  error = FT_THROW( Invalid_Argument );
56  goto Exit;
57  }
58 
59  FT_FACE_FIND_GLOBAL_SERVICE( face, service, GX_VALIDATE );
60 
61  if ( service )
62  error = service->validate( face,
63  validation_flags,
64  tables,
65  table_length );
66  else
67  error = FT_THROW( Unimplemented_Feature );
68 
69  Exit:
70  return error;
71  }
int FT_Error
Definition: fttypes.h:300
#define error(str)
Definition: mkdosfs.c:1605
struct nls_table * tables
Definition: nls_base.c:22
#define FT_FACE_FIND_GLOBAL_SERVICE(face, ptr, id)
Definition: ftserv.h:125
#define FT_THROW(e)
Definition: ftdebug.h:213
static void Exit(void)
Definition: sock.c:1331
GLenum GLuint GLint GLenum face
Definition: glext.h:7025