22 #include FT_INTERNAL_OBJECTS_H 23 #include FT_INTERNAL_DEBUG_H 30 #define FT_COMPONENT trace_cache 118 FT_ERROR((
"ftc_snode_load: invalid glyph index" ));
119 return FT_THROW( Invalid_Argument );
135 FT_Pos xadvance, yadvance;
138 if ( slot->
format != FT_GLYPH_FORMAT_BITMAP )
141 " glyph loaded didn't return a bitmap\n" ));
149 #define CHECK_CHAR( d ) ( temp = (FT_Char)d, temp == d ) 150 #define CHECK_BYTE( d ) ( temp = (FT_Byte)d, temp == d ) 153 xadvance = ( slot->
advance.
x + 32 ) >> 6;
154 yadvance = ( slot->
advance.
y + 32 ) >> 6;
165 " glyph too large for small bitmap cache\n"));
180 error = ftc_sbit_copy_bitmap( sbit, bitmap, memory );
192 if ( error &&
FT_ERR_NEQ( error, Out_Of_Memory ) )
215 FT_UInt gindex = gquery->gindex;
224 if ( total == 0 || gindex >= total )
236 count = total -
start;
243 for ( node_count = 0; node_count <
count; node_count++ )
248 error = ftc_snode_load( snode,
294 size =
sizeof ( *snode );
338 *list_changed =
FALSE;
385 ftcsnode->ref_count++;
390 error = ftc_snode_load( snode, cache->manager, gindex, &size );
394 ftcsnode->ref_count--;
399 cache->manager->cur_weight +=
size;
416 cache, list_changed );
#define FT_ALLOC(ptr, size)
#define FTC_CACHE_TRYLOOP_END(list_changed)
FT_BEGIN_HEADER typedef signed long FT_Pos
#define FTC_SBIT_ITEMS_PER_NODE
FTC_SNode_New(FTC_SNode *psnode, FTC_GQuery gquery, FTC_Cache cache)
return FT_THROW(Missing_Property)
FTC_SFamily_GetCountFunc family_get_count
#define FTC_CACHE_TRYLOOP(cache)
FT_BEGIN_HEADER typedef unsigned char FT_Bool
GLenum GLuint GLint GLenum face
#define FT_ERROR(varformat)
#define FT_ASSERT(condition)
FTC_GNode_Init(FTC_GNode gnode, FT_UInt gindex, FTC_Family family)
FTC_SFamily_LoadGlyphFunc family_load_glyph
ftc_snode_free(FTC_Node ftcsnode, FTC_Cache cache)
#define FT_TRACE2(varformat)
const FTC_SFamilyClassRec * FTC_SFamilyClass
ftc_snode_weight(FTC_Node ftcsnode, FTC_Cache cache)
typedefFT_BEGIN_HEADER struct FT_MemoryRec_ * FT_Memory
FTC_SBitRec sbits[FTC_SBIT_ITEMS_PER_NODE]
FT_BEGIN_HEADER struct FTC_FamilyRec_ * FTC_Family
FTC_GNode_Done(FTC_GNode gnode, FTC_Cache cache)
FTC_MruListClassRec clazz
FTC_SNode_Compare(FTC_SNode snode, FTC_GQuery gquery, FTC_Cache cache, FT_Bool *list_changed)
FTC_SNode_Free(FTC_SNode snode, FTC_Cache cache)
struct FTC_GQueryRec_ * FTC_GQuery
GLuint GLuint GLsizei count
struct FTC_SNodeRec_ * FTC_SNode
FT_TRACE0(("cff_property_set: missing property `%s'\, property_name))
#define FT_MEM_COPY(dest, source, count)
ftc_snode_compare(FTC_Node ftcsnode, FT_Pointer ftcgquery, FTC_Cache cache, FT_Bool *list_changed)
#define FTC_CACHE__SFAMILY_CLASS(x)
ftc_snode_new(FTC_Node *ftcpsnode, FT_Pointer ftcgquery, FTC_Cache cache)