sdk-world v2026.11.05
PS2 SDK - world tier (copyleft-allowed, non-essential packages)
Loading...
Searching...
No Matches
ftcsbits.h
Go to the documentation of this file.
1/****************************************************************************
2 *
3 * ftcsbits.h
4 *
5 * A small-bitmap cache (specification).
6 *
7 * Copyright (C) 2000-2025 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
23#ifndef FTCSBITS_H_
24#define FTCSBITS_H_
25
26
27#include <freetype/ftcache.h>
28#include "ftcglyph.h"
29
30
31FT_BEGIN_HEADER
32
33#define FTC_SBIT_ITEMS_PER_NODE 16
34
35 typedef struct FTC_SNodeRec_
36 {
37 FTC_GNodeRec gnode;
38 FT_UInt count;
39 FTC_SBitRec sbits[FTC_SBIT_ITEMS_PER_NODE];
40
41 } FTC_SNodeRec, *FTC_SNode;
42
43
44#define FTC_SNODE( x ) ( (FTC_SNode)( x ) )
45#define FTC_SNODE_GINDEX( x ) FTC_GNODE( x )->gindex
46#define FTC_SNODE_FAMILY( x ) FTC_GNODE( x )->family
47
48 typedef FT_UInt
49 (*FTC_SFamily_GetCountFunc)( FTC_Family family,
50 FTC_Manager manager );
51
52 typedef FT_Error
53 (*FTC_SFamily_LoadGlyphFunc)( FTC_Family family,
54 FT_UInt gindex,
55 FTC_Manager manager,
56 FT_Face *aface );
57
58 typedef struct FTC_SFamilyClassRec_
59 {
60 FTC_MruListClassRec clazz;
61 FTC_SFamily_GetCountFunc family_get_count;
62 FTC_SFamily_LoadGlyphFunc family_load_glyph;
63
64 } FTC_SFamilyClassRec;
65
66 typedef const FTC_SFamilyClassRec* FTC_SFamilyClass;
67
68#define FTC_SFAMILY_CLASS( x ) ( (FTC_SFamilyClass)(x) )
69
70#define FTC_CACHE_SFAMILY_CLASS( x ) \
71 FTC_SFAMILY_CLASS( FTC_CACHE_GCACHE_CLASS( x )->family_class )
72
73
74 FT_LOCAL( void )
75 FTC_SNode_Free( FTC_SNode snode,
76 FTC_Cache cache );
77
78 FT_LOCAL( FT_Error )
79 FTC_SNode_New( FTC_SNode *psnode,
80 FTC_GQuery gquery,
81 FTC_Cache cache );
82
83#if 0
84 FT_LOCAL( FT_ULong )
85 FTC_SNode_Weight( FTC_SNode inode );
86#endif
87
88 /* */
89
90FT_END_HEADER
91
92#endif /* FTCSBITS_H_ */
93
94
95/* END */