zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ftcsbits.h
Go to the documentation of this file.
1 /***************************************************************************/
2 /* */
3 /* ftcsbits.h */
4 /* */
5 /* A small-bitmap cache (specification). */
6 /* */
7 /* Copyright 2000-2001, 2002, 2003, 2006, 2011 by */
8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */
9 /* */
10 /* This file is part of the FreeType project, and may only be used, */
11 /* modified, and distributed under the terms of the FreeType project */
12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
13 /* this file you indicate that you have read the license and */
14 /* understand and accept it fully. */
15 /* */
16 /***************************************************************************/
17 
18 
19 #ifndef __FTCSBITS_H__
20 #define __FTCSBITS_H__
21 
22 
23 #include <ft2build.h>
24 #include FT_CACHE_H
25 #include "ftcglyph.h"
26 
27 
29 
30 #define FTC_SBIT_ITEMS_PER_NODE 16
31 
32  typedef struct FTC_SNodeRec_
33  {
37 
39 
40 
41 #define FTC_SNODE( x ) ( (FTC_SNode)( x ) )
42 #define FTC_SNODE_GINDEX( x ) FTC_GNODE( x )->gindex
43 #define FTC_SNODE_FAMILY( x ) FTC_GNODE( x )->family
44 
45  typedef FT_UInt
47  FTC_Manager manager );
48 
49  typedef FT_Error
51  FT_UInt gindex,
52  FTC_Manager manager,
53  FT_Face *aface );
54 
55  typedef struct FTC_SFamilyClassRec_
56  {
60 
62 
64 
65 #define FTC_SFAMILY_CLASS( x ) ((FTC_SFamilyClass)(x))
66 
67 #define FTC_CACHE__SFAMILY_CLASS( x ) \
68  FTC_SFAMILY_CLASS( FTC_CACHE__GCACHE_CLASS( x )->family_class )
69 
70 
71  FT_LOCAL( void )
72  FTC_SNode_Free( FTC_SNode snode,
73  FTC_Cache cache );
74 
76  FTC_SNode_New( FTC_SNode *psnode,
77  FTC_GQuery gquery,
78  FTC_Cache cache );
79 
80 #if 0
82  FTC_SNode_Weight( FTC_SNode inode );
83 #endif
84 
85 
86 #ifdef FTC_INLINE
87 
88  FT_LOCAL( FT_Bool )
89  FTC_SNode_Compare( FTC_SNode snode,
90  FTC_GQuery gquery,
91  FTC_Cache cache,
92  FT_Bool* list_changed);
93 
94 #endif
95 
96  /* */
97 
99 
100 #endif /* __FTCSBITS_H__ */
101 
102 
103 /* END */
int FT_Error
Definition: fttypes.h:296
FT_UInt(* FTC_SFamily_GetCountFunc)(FTC_Family family, FTC_Manager manager)
Definition: ftcsbits.h:46
unsigned long FT_ULong
Definition: fttypes.h:249
#define FTC_SBIT_ITEMS_PER_NODE
Definition: ftcsbits.h:30
#define FT_END_HEADER
Definition: ftheader.h:54
FTC_GNodeRec gnode
Definition: ftcsbits.h:34
FTC_SNode_New(FTC_SNode *psnode, FTC_GQuery gquery, FTC_Cache cache)
Definition: ftcsbits.c:208
FTC_SFamily_GetCountFunc family_get_count
Definition: ftcsbits.h:58
FT_BEGIN_HEADER typedef unsigned char FT_Bool
Definition: fttypes.h:104
#define FT_BEGIN_HEADER
Definition: ftheader.h:36
#define FT_LOCAL(x)
Definition: ftconfig.h:466
struct FTC_SFamilyClassRec_ FTC_SFamilyClassRec
FTC_SFamily_LoadGlyphFunc family_load_glyph
Definition: ftcsbits.h:59
const FTC_SFamilyClassRec * FTC_SFamilyClass
Definition: ftcsbits.h:63
FTC_SBitRec sbits[FTC_SBIT_ITEMS_PER_NODE]
Definition: ftcsbits.h:36
FT_BEGIN_HEADER struct FTC_FamilyRec_ * FTC_Family
FTC_MruListClassRec clazz
Definition: ftcsbits.h:57
FTC_SNode_Compare(FTC_SNode snode, FTC_GQuery gquery, FTC_Cache cache, FT_Bool *list_changed)
Definition: ftcsbits.c:410
FT_UInt count
Definition: ftcsbits.h:35
unsigned int FT_UInt
Definition: fttypes.h:227
FTC_SNode_Free(FTC_SNode snode, FTC_Cache cache)
Definition: ftcsbits.c:84
struct FTC_SNodeRec_ FTC_SNodeRec
struct FTC_SNodeRec_ * FTC_SNode
FT_Error(* FTC_SFamily_LoadGlyphFunc)(FTC_Family family, FT_UInt gindex, FTC_Manager manager, FT_Face *aface)
Definition: ftcsbits.h:50