ReactOS  0.4.15-dev-1054-gd029a62
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-2018 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 )
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 )
90  FTC_GQuery gquery,
92  FT_Bool* list_changed);
93 
94 #endif
95 
96  /* */
97 
99 
100 #endif /* FTCSBITS_H_ */
101 
102 
103 /* END */
Definition: cache.c:48
int FT_Error
Definition: fttypes.h:300
unsigned long FT_ULong
Definition: fttypes.h:253
#define FTC_SBIT_ITEMS_PER_NODE
Definition: ftcsbits.h:30
FTC_MruListClassRec clazz
Definition: ftcsbits.h:57
#define FT_END_HEADER
Definition: ftheader.h:54
FTC_SNode_New(FTC_SNode *psnode, FTC_GQuery gquery, FTC_Cache cache)
Definition: ftcsbits.c:210
FT_Error(* FTC_SFamily_LoadGlyphFunc)(FTC_Family family, FT_UInt gindex, FTC_Manager manager, FT_Face *aface)
Definition: ftcsbits.h:50
FT_UInt count
Definition: ftcsbits.h:35
Definition: fs.h:78
FT_BEGIN_HEADER typedef unsigned char FT_Bool
Definition: fttypes.h:108
#define FT_BEGIN_HEADER
Definition: ftheader.h:36
#define FT_LOCAL(x)
Definition: ftconfig.h:387
struct FTC_SFamilyClassRec_ FTC_SFamilyClassRec
FTC_GNodeRec gnode
Definition: ftcsbits.h:34
const FTC_SFamilyClassRec * FTC_SFamilyClass
Definition: ftcsbits.h:63
FTC_SNode_Free(FTC_SNode snode, FTC_Cache cache)
Definition: ftcsbits.c:86
FT_BEGIN_HEADER struct FTC_FamilyRec_ * FTC_Family
FTC_SFamily_GetCountFunc family_get_count
Definition: ftcsbits.h:58
unsigned int FT_UInt
Definition: fttypes.h:231
FTC_SNode_Compare(FTC_SNode snode, FTC_GQuery gquery, FTC_Cache cache, FT_Bool *list_changed)
Definition: ftcsbits.c:412
FTC_SFamily_LoadGlyphFunc family_load_glyph
Definition: ftcsbits.h:59
struct FTC_SNodeRec_ FTC_SNodeRec
FTC_SBitRec sbits[FTC_SBIT_ITEMS_PER_NODE]
Definition: ftcsbits.h:36
struct FTC_SNodeRec_ * FTC_SNode
FT_UInt(* FTC_SFamily_GetCountFunc)(FTC_Family family, FTC_Manager manager)
Definition: ftcsbits.h:46