ReactOS 0.4.15-dev-7953-g1f49173
ftcimage.h File Reference
#include <ft2build.h>
#include "ftcglyph.h"
Include dependency graph for ftcimage.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  FTC_INodeRec_
 
struct  FTC_IFamilyClassRec_
 

Macros

#define FTC_INODE(x)   ( (FTC_INode)( x ) )
 
#define FTC_INODE_GINDEX(x)   FTC_GNODE(x)->gindex
 
#define FTC_INODE_FAMILY(x)   FTC_GNODE(x)->family
 
#define FTC_IFAMILY_CLASS(x)   ((FTC_IFamilyClass)(x))
 
#define FTC_CACHE_IFAMILY_CLASS(x)    FTC_IFAMILY_CLASS( FTC_CACHE_GCACHE_CLASS(x)->family_class )
 

Typedefs

typedef FT_BEGIN_HEADER struct FTC_INodeRec_ FTC_INodeRec
 
typedef FT_BEGIN_HEADER struct FTC_INodeRec_FTC_INode
 
typedef FT_Error(* FTC_IFamily_LoadGlyphFunc) (FTC_Family family, FT_UInt gindex, FTC_Cache cache, FT_Glyph *aglyph)
 
typedef struct FTC_IFamilyClassRec_ FTC_IFamilyClassRec
 
typedef const FTC_IFamilyClassRecFTC_IFamilyClass
 

Functions

 FTC_INode_Free (FTC_INode inode, FTC_Cache cache)
 
 FTC_INode_New (FTC_INode *pinode, FTC_GQuery gquery, FTC_Cache cache)
 

Macro Definition Documentation

◆ FTC_CACHE_IFAMILY_CLASS

#define FTC_CACHE_IFAMILY_CLASS (   x)     FTC_IFAMILY_CLASS( FTC_CACHE_GCACHE_CLASS(x)->family_class )

Definition at line 75 of file ftcimage.h.

◆ FTC_IFAMILY_CLASS

#define FTC_IFAMILY_CLASS (   x)    ((FTC_IFamilyClass)(x))

Definition at line 73 of file ftcimage.h.

◆ FTC_INODE

#define FTC_INODE (   x)    ( (FTC_INode)( x ) )

Definition at line 54 of file ftcimage.h.

◆ FTC_INODE_FAMILY

#define FTC_INODE_FAMILY (   x)    FTC_GNODE(x)->family

Definition at line 56 of file ftcimage.h.

◆ FTC_INODE_GINDEX

#define FTC_INODE_GINDEX (   x)    FTC_GNODE(x)->gindex

Definition at line 55 of file ftcimage.h.

Typedef Documentation

◆ FTC_IFamily_LoadGlyphFunc

typedef FT_Error(* FTC_IFamily_LoadGlyphFunc) (FTC_Family family, FT_UInt gindex, FTC_Cache cache, FT_Glyph *aglyph)

Definition at line 58 of file ftcimage.h.

◆ FTC_IFamilyClass

Definition at line 71 of file ftcimage.h.

◆ FTC_IFamilyClassRec

◆ FTC_INode

◆ FTC_INodeRec

Function Documentation

◆ FTC_INode_Free()

FTC_INode_Free ( FTC_INode  inode,
FTC_Cache  cache 
)

Definition at line 50 of file ftcimage.c.

52 {
54 }
#define FTC_NODE(x)
Definition: ftccache.h:69
ftc_inode_free(FTC_Node ftcinode, FTC_Cache cache)
Definition: ftcimage.c:31
Definition: cache.c:49
Definition: fs.h:78

Referenced by FTC_INode_New().

◆ FTC_INode_New()

FTC_INode_New ( FTC_INode pinode,
FTC_GQuery  gquery,
FTC_Cache  cache 
)

Definition at line 59 of file ftcimage.c.

62 {
63 FT_Memory memory = cache->memory;
66
67
68 if ( !FT_NEW( inode ) )
69 {
70 FTC_GNode gnode = FTC_GNODE( inode );
71 FTC_Family family = gquery->family;
72 FT_UInt gindex = gquery->gindex;
74
75
76 /* initialize its inner fields */
77 FTC_GNode_Init( gnode, gindex, family );
78
79 /* we will now load the glyph image */
80 error = clazz->family_load_glyph( family, gindex, cache,
81 &inode->glyph );
82 if ( error )
83 {
85 inode = NULL;
86 }
87 }
88
89 *pinode = inode;
90 return error;
91 }
#define NULL
Definition: types.h:112
FTC_GNode_Init(FTC_GNode gnode, FT_UInt gindex, FTC_Family family)
Definition: ftcglyph.c:31
FT_BEGIN_HEADER struct FTC_FamilyRec_ * FTC_Family
#define FTC_GNODE(x)
Definition: ftcglyph.h:156
FTC_INode_Free(FTC_INode inode, FTC_Cache cache)
Definition: ftcimage.c:50
#define FTC_CACHE_IFAMILY_CLASS(x)
Definition: ftcimage.h:75
FT_BEGIN_HEADER struct FTC_INodeRec_ * FTC_INode
#define FT_NEW(ptr)
Definition: ftmemory.h:331
typedefFT_BEGIN_HEADER struct FT_MemoryRec_ * FT_Memory
Definition: ftsystem.h:66
int FT_Error
Definition: fttypes.h:300
unsigned int FT_UInt
Definition: fttypes.h:231
#define error(str)
Definition: mkdosfs.c:1605
static char memory[1024 *256]
Definition: process.c:116
FTC_Family family
Definition: ftcglyph.h:163
FT_UInt gindex
Definition: ftcglyph.h:162
FTC_IFamily_LoadGlyphFunc family_load_glyph
Definition: ftcimage.h:67

Referenced by ftc_inode_new().