ReactOS  0.4.15-dev-1384-g878186b
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 59 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  }
Definition: cache.c:48
#define FTC_NODE(x)
Definition: ftccache.h:69
Definition: fs.h:78
ftc_inode_free(FTC_Node ftcinode, FTC_Cache cache)
Definition: ftcimage.c:31

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  }
Definition: cache.c:48
int FT_Error
Definition: fttypes.h:300
#define error(str)
Definition: mkdosfs.c:1605
FTC_IFamily_LoadGlyphFunc family_load_glyph
Definition: ftcimage.h:67
#define FTC_CACHE_IFAMILY_CLASS(x)
Definition: ftcimage.h:75
static char memory[1024 *256]
Definition: process.c:116
Definition: fs.h:78
FTC_GNode_Init(FTC_GNode gnode, FT_UInt gindex, FTC_Family family)
Definition: ftcglyph.c:31
FTC_INode_Free(FTC_INode inode, FTC_Cache cache)
Definition: ftcimage.c:50
#define FTC_GNODE(x)
Definition: ftcglyph.h:156
typedefFT_BEGIN_HEADER struct FT_MemoryRec_ * FT_Memory
Definition: ftsystem.h:66
FT_BEGIN_HEADER struct FTC_FamilyRec_ * FTC_Family
unsigned int FT_UInt
Definition: fttypes.h:231
#define NULL
Definition: types.h:112
FT_BEGIN_HEADER struct FTC_INodeRec_ * FTC_INode
FTC_Family family
Definition: ftcglyph.h:163
#define FT_NEW(ptr)
Definition: ftmemory.h:331
FT_UInt gindex
Definition: ftcglyph.h:162

Referenced by ftc_inode_new().