zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ftccmap.c File Reference
#include <ft2build.h>
#include <FT_FREETYPE_H>
#include <FT_CACHE_H>
#include "ftcmanag.h"
#include <FT_INTERNAL_MEMORY_H>
#include <FT_INTERNAL_OBJECTS_H>
#include <FT_INTERNAL_DEBUG_H>
#include "ftccback.h"
#include "ftcerror.h"

Go to the source code of this file.

Macros

#define FT_COMPONENT   trace_cache
 
#define FTC_CMAP_HASH(faceid, index, charcode)
 
#define FTC_CMAP_INDICES_MAX   128
 
#define FTC_CMAP_NODE(x)   ( (FTC_CMapNode)( x ) )
 
#define FTC_CMAP_NODE_HASH(x)   FTC_CMAP_HASH( (x)->face_id, (x)->cmap_index, (x)->first )
 
#define FTC_CMAP_QUERY(x)   ((FTC_CMapQuery)(x))
 
#define FTC_CMAP_QUERY_HASH(x)   FTC_CMAP_HASH( (x)->face_id, (x)->cmap_index, (x)->char_code )
 
#define FTC_CMAP_UNKNOWN   ( (FT_UInt16)-1 )
 

Typedefs

typedef struct FTC_CMapNodeRec_ * FTC_CMapNode
 
typedef struct FTC_CMapNodeRec_ FTC_CMapNodeRec
 
typedef struct FTC_CMapQueryRec_ * FTC_CMapQuery
 
typedef struct FTC_CMapQueryRec_ FTC_CMapQueryRec
 

Functions

 ftc_cmap_node_compare (FTC_Node ftcnode, FT_Pointer ftcquery, FTC_Cache cache, FT_Bool *list_changed)
 
 ftc_cmap_node_free (FTC_Node ftcnode, FTC_Cache cache)
 
 ftc_cmap_node_new (FTC_Node *ftcanode, FT_Pointer ftcquery, FTC_Cache cache)
 
 ftc_cmap_node_remove_faceid (FTC_Node ftcnode, FT_Pointer ftcface_id, FTC_Cache cache, FT_Bool *list_changed)
 
 ftc_cmap_node_weight (FTC_Node cnode, FTC_Cache cache)
 
 FTC_CMapCache_Lookup (FTC_CMapCache cmap_cache, FTC_FaceID face_id, FT_Int cmap_index, FT_UInt32 char_code)
 
 FTC_CMapCache_New (FTC_Manager manager, FTC_CMapCache *acache)
 

Variables

FT_CALLBACK_TABLE_DEF const
FTC_CacheClassRec 
ftc_cmap_cache_class
 

Macro Definition Documentation

#define FT_COMPONENT   trace_cache

Definition at line 32 of file ftccmap.c.

#define FTC_CMAP_HASH (   faceid,
  index,
  charcode 
)
Value:
( _FTC_FACE_ID_HASH( faceid ) + 211 * (index) + \
( (charcode) / FTC_CMAP_INDICES_MAX ) )
#define FTC_CMAP_INDICES_MAX
Definition: ftccmap.c:87
GLuint index
Definition: glew.h:1800
#define _FTC_FACE_ID_HASH(i)
Definition: ftccache.h:28

Definition at line 90 of file ftccmap.c.

Referenced by FTC_CMapCache_Lookup().

#define FTC_CMAP_INDICES_MAX   128

Definition at line 87 of file ftccmap.c.

Referenced by ftc_cmap_node_compare(), ftc_cmap_node_new(), and FTC_CMapCache_Lookup().

#define FTC_CMAP_NODE (   x)    ( (FTC_CMapNode)( x ) )

Definition at line 118 of file ftccmap.c.

Referenced by FTC_CMapCache_Lookup().

#define FTC_CMAP_NODE_HASH (   x)    FTC_CMAP_HASH( (x)->face_id, (x)->cmap_index, (x)->first )

Definition at line 119 of file ftccmap.c.

#define FTC_CMAP_QUERY (   x)    ((FTC_CMapQuery)(x))

Definition at line 103 of file ftccmap.c.

#define FTC_CMAP_QUERY_HASH (   x)    FTC_CMAP_HASH( (x)->face_id, (x)->cmap_index, (x)->char_code )

Definition at line 104 of file ftccmap.c.

#define FTC_CMAP_UNKNOWN   ( (FT_UInt16)-1 )

Definition at line 124 of file ftccmap.c.

Referenced by ftc_cmap_node_new(), and FTC_CMapCache_Lookup().

Typedef Documentation

typedef struct FTC_CMapNodeRec_ * FTC_CMapNode
typedef struct FTC_CMapNodeRec_ FTC_CMapNodeRec
typedef struct FTC_CMapQueryRec_ * FTC_CMapQuery
typedef struct FTC_CMapQueryRec_ FTC_CMapQueryRec

Function Documentation

ftc_cmap_node_compare ( FTC_Node  ftcnode,
FT_Pointer  ftcquery,
FTC_Cache  cache,
FT_Bool list_changed 
)

Definition at line 192 of file ftccmap.c.

References FALSE, FT_BOOL, FT_UNUSED, and FTC_CMAP_INDICES_MAX.

Referenced by FTC_CMapCache_Lookup().

ftc_cmap_node_free ( FTC_Node  ftcnode,
FTC_Cache  cache 
)

Definition at line 137 of file ftccmap.c.

References FT_FREE.

ftc_cmap_node_new ( FTC_Node ftcanode,
FT_Pointer  ftcquery,
FTC_Cache  cache 
)

Definition at line 150 of file ftccmap.c.

References error, FT_NEW, FTC_CMAP_INDICES_MAX, FTC_CMAP_UNKNOWN, and NULL.

ftc_cmap_node_remove_faceid ( FTC_Node  ftcnode,
FT_Pointer  ftcface_id,
FTC_Cache  cache,
FT_Bool list_changed 
)

Definition at line 218 of file ftccmap.c.

References FALSE, FT_BOOL, FT_UNUSED, and FTC_FaceID.

ftc_cmap_node_weight ( FTC_Node  cnode,
FTC_Cache  cache 
)

Definition at line 180 of file ftccmap.c.

References FT_UNUSED.

FTC_CMapCache_New ( FTC_Manager  manager,
FTC_CMapCache acache 
)

Definition at line 261 of file ftccmap.c.

References FTC_CACHE_P, and FTC_Manager_RegisterCache().

Variable Documentation

Initial value:
=
{
sizeof ( FTC_CacheRec ),
}
ftc_cmap_node_new(FTC_Node *ftcanode, FT_Pointer ftcquery, FTC_Cache cache)
Definition: ftccmap.c:150
ftc_cmap_node_weight(FTC_Node cnode, FTC_Cache cache)
Definition: ftccmap.c:180
ftc_cmap_node_compare(FTC_Node ftcnode, FT_Pointer ftcquery, FTC_Cache cache, FT_Bool *list_changed)
Definition: ftccmap.c:192
ftc_cmap_node_free(FTC_Node ftcnode, FTC_Cache cache)
Definition: ftccmap.c:137
ftc_cache_init(FTC_Cache cache)
Definition: ftccache.c:340
struct FTC_CacheRec_ FTC_CacheRec
ftc_cache_done(FTC_Cache cache)
Definition: ftccache.c:394
ftc_cmap_node_remove_faceid(FTC_Node ftcnode, FT_Pointer ftcface_id, FTC_Cache cache, FT_Bool *list_changed)
Definition: ftccmap.c:218

Definition at line 244 of file ftccmap.c.