zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ftcmru.h File Reference
#include <ft2build.h>
#include <FT_FREETYPE_H>

Go to the source code of this file.

Classes

struct  FTC_MruListClassRec_
 
struct  FTC_MruListRec_
 
struct  FTC_MruNodeRec_
 

Macros

#define FTC_INLINE
 
#define FTC_MRULIST_LOOKUP(list, key, node, error)   FTC_MRULIST_LOOKUP_CMP( list, key, (list)->clazz.node_compare, node, error )
 
#define FTC_MRULIST_LOOKUP_CMP(list, key, compare, node, error)
 
#define FTC_MRULIST_LOOP(list, node)
 
#define FTC_MRULIST_LOOP_END()
 
#define xxFT_DEBUG_ERROR
 

Typedefs

typedef struct FTC_MruListRec_FTC_MruList
 
typedef struct
FTC_MruListClassRec_ const
FTC_MruListClass
 
typedef struct FTC_MruListClassRec_ FTC_MruListClassRec
 
typedef struct FTC_MruListRec_ FTC_MruListRec
 
typedef typedefFT_BEGIN_HEADER
struct FTC_MruNodeRec_
FTC_MruNode
 
typedef FT_Bool(* FTC_MruNode_CompareFunc )(FTC_MruNode node, FT_Pointer key)
 
typedef void(* FTC_MruNode_DoneFunc )(FTC_MruNode node, FT_Pointer data)
 
typedef FT_Error(* FTC_MruNode_InitFunc )(FTC_MruNode node, FT_Pointer key, FT_Pointer data)
 
typedef FT_Error(* FTC_MruNode_ResetFunc )(FTC_MruNode node, FT_Pointer key, FT_Pointer data)
 
typedef struct FTC_MruNodeRec_ FTC_MruNodeRec
 

Functions

 FTC_MruList_Done (FTC_MruList list)
 
 FTC_MruList_Init (FTC_MruList list, FTC_MruListClass clazz, FT_UInt max_nodes, FT_Pointer data, FT_Memory memory)
 
 FTC_MruList_New (FTC_MruList list, FT_Pointer key, FTC_MruNode *anode)
 
 FTC_MruList_Remove (FTC_MruList list, FTC_MruNode node)
 
 FTC_MruList_RemoveSelection (FTC_MruList list, FTC_MruNode_CompareFunc selection, FT_Pointer key)
 
 FTC_MruList_Reset (FTC_MruList list)
 
 FTC_MruNode_Prepend (FTC_MruNode *plist, FTC_MruNode node)
 
 FTC_MruNode_Remove (FTC_MruNode *plist, FTC_MruNode node)
 
 FTC_MruNode_Up (FTC_MruNode *plist, FTC_MruNode node)
 

Macro Definition Documentation

#define FTC_INLINE

Definition at line 57 of file ftcmru.h.

#define FTC_MRULIST_LOOKUP (   list,
  key,
  node,
  error 
)    FTC_MRULIST_LOOKUP_CMP( list, key, (list)->clazz.node_compare, node, error )

Definition at line 196 of file ftcmru.h.

#define FTC_MRULIST_LOOKUP_CMP (   list,
  key,
  compare,
  node,
  error 
)

Definition at line 162 of file ftcmru.h.

Referenced by FTC_Manager_LookupFace(), and FTC_Manager_LookupSize().

#define FTC_MRULIST_LOOP (   list,
  node 
)
Value:
FTC_MruNode _first = (list)->nodes; \
if ( _first ) \
{ \
FTC_MruNode _node = _first; \
\
\
do \
{ \
*(FTC_MruNode*)&(node) = _node;
typedefFT_BEGIN_HEADER struct FTC_MruNodeRec_ * FTC_MruNode
Definition: ftcmru.h:61
if(!yyg->yy_init)

Definition at line 216 of file ftcmru.h.

#define FTC_MRULIST_LOOP_END ( )
Value:
_node = _node->next; \
\
} while ( _node != _first ); \
} \
#define FT_END_STMNT
Definition: ftconfig.h:301

Definition at line 231 of file ftcmru.h.

#define xxFT_DEBUG_ERROR

Definition at line 56 of file ftcmru.h.

Typedef Documentation

typedef struct FTC_MruListRec_* FTC_MruList

Definition at line 84 of file ftcmru.h.

Definition at line 86 of file ftcmru.h.

typedef typedefFT_BEGIN_HEADER struct FTC_MruNodeRec_* FTC_MruNode

Definition at line 61 of file ftcmru.h.

typedef FT_Bool(* FTC_MruNode_CompareFunc)(FTC_MruNode node, FT_Pointer key)

Definition at line 90 of file ftcmru.h.

typedef void(* FTC_MruNode_DoneFunc)(FTC_MruNode node, FT_Pointer data)

Definition at line 104 of file ftcmru.h.

typedef FT_Error(* FTC_MruNode_InitFunc)(FTC_MruNode node, FT_Pointer key, FT_Pointer data)

Definition at line 94 of file ftcmru.h.

typedef FT_Error(* FTC_MruNode_ResetFunc)(FTC_MruNode node, FT_Pointer key, FT_Pointer data)

Definition at line 99 of file ftcmru.h.

Function Documentation

FTC_MruList_Done ( FTC_MruList  list)

Definition at line 195 of file ftcmru.c.

References FTC_MruList_Reset().

Referenced by ftc_gcache_done(), and FTC_Manager_Done().

FTC_MruList_Init ( FTC_MruList  list,
FTC_MruListClass  clazz,
FT_UInt  max_nodes,
FT_Pointer  data,
FT_Memory  memory 
)

Definition at line 169 of file ftcmru.c.

References NULL.

Referenced by ftc_gcache_init(), and FTC_Manager_New().

FTC_MruList_New ( FTC_MruList  list,
FT_Pointer  key,
FTC_MruNode anode 
)
FTC_MruList_Remove ( FTC_MruList  list,
FTC_MruNode  node 
)

Definition at line 308 of file ftcmru.c.

References FT_FREE, and FTC_MruNode_Remove().

Referenced by FTC_MruList_RemoveSelection(), and FTC_MruList_Reset().

FTC_MruList_RemoveSelection ( FTC_MruList  list,
FTC_MruNode_CompareFunc  selection,
FT_Pointer  key 
)

Definition at line 327 of file ftcmru.c.

References FTC_MruList_Remove(), and NULL.

Referenced by ftc_face_node_done(), and FTC_Manager_RemoveFaceID().

FTC_MruList_Reset ( FTC_MruList  list)

Definition at line 185 of file ftcmru.c.

References FT_ASSERT, and FTC_MruList_Remove().

Referenced by FTC_Manager_Reset(), and FTC_MruList_Done().

FTC_MruNode_Prepend ( FTC_MruNode plist,
FTC_MruNode  node 
)

Definition at line 29 of file ftcmru.c.

Referenced by FTC_MruList_New(), and ftc_node_mru_link().

FTC_MruNode_Remove ( FTC_MruNode plist,
FTC_MruNode  node 
)

Definition at line 122 of file ftcmru.c.

References FT_ASSERT, and NULL.

Referenced by FTC_MruList_New(), FTC_MruList_Remove(), and ftc_node_mru_unlink().

FTC_MruNode_Up ( FTC_MruNode plist,
FTC_MruNode  node 
)

Definition at line 73 of file ftcmru.c.

References FT_ASSERT, and NULL.

Referenced by FTC_MruList_New().