Visualization Library 2.0.0-b5

A lightweight C++ OpenGL middleware for 2D/3D graphics

VL     Star     Watch     Fork     Issue

[Download] [Tutorials] [All Classes] [Grouped Classes]
Classes | Macros | Typedefs | Functions
ftcmru.h File Reference
#include <ft2build.h>

Go to the source code of this file.

Classes

struct  FTC_MruNodeRec_
 
struct  FTC_MruListClassRec_
 
struct  FTC_MruListRec_
 

Macros

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

Typedefs

typedef typedefFT_BEGIN_HEADER struct FTC_MruNodeRec_FTC_MruNode
 
typedef struct FTC_MruNodeRec_ FTC_MruNodeRec
 
typedef struct FTC_MruListRec_FTC_MruList
 
typedef struct FTC_MruListClassRec_ constFTC_MruListClass
 
typedef FT_Bool(* FTC_MruNode_CompareFunc) (FTC_MruNode node, FT_Pointer key)
 
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 void(* FTC_MruNode_DoneFunc) (FTC_MruNode node, FT_Pointer data)
 
typedef struct FTC_MruListClassRec_ FTC_MruListClassRec
 
typedef struct FTC_MruListRec_ FTC_MruListRec
 

Functions

 FTC_MruNode_Prepend (FTC_MruNode *plist, FTC_MruNode node)
 
 FTC_MruNode_Up (FTC_MruNode *plist, FTC_MruNode node)
 
 FTC_MruNode_Remove (FTC_MruNode *plist, FTC_MruNode node)
 
 FTC_MruList_Init (FTC_MruList list, FTC_MruListClass clazz, FT_UInt max_nodes, FT_Pointer data, FT_Memory memory)
 
 FTC_MruList_Reset (FTC_MruList list)
 
 FTC_MruList_Done (FTC_MruList list)
 
 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)
 

Macro Definition Documentation

◆ FTC_INLINE

#define FTC_INLINE

Definition at line 57 of file ftcmru.h.

◆ FTC_MRULIST_LOOKUP

#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.

Referenced by FTC_GCache_New().

◆ FTC_MRULIST_LOOKUP_CMP

#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().

◆ FTC_MRULIST_LOOP

#define FTC_MRULIST_LOOP (   list,
  node 
)
Value:
FT_BEGIN_STMNT \
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(!abbox) return FT_THROW(Invalid_Argument)

Definition at line 216 of file ftcmru.h.

◆ FTC_MRULIST_LOOP_END

#define FTC_MRULIST_LOOP_END ( )
Value:
_node = _node->next; \
\
} while ( _node != _first ); \
} \
FT_END_STMNT

Definition at line 231 of file ftcmru.h.

◆ xxFT_DEBUG_ERROR

#define xxFT_DEBUG_ERROR

Definition at line 56 of file ftcmru.h.

Typedef Documentation

◆ FTC_MruList

typedef struct FTC_MruListRec_* FTC_MruList

Definition at line 84 of file ftcmru.h.

◆ FTC_MruListClass

Definition at line 86 of file ftcmru.h.

◆ FTC_MruListClassRec

◆ FTC_MruListRec

◆ FTC_MruNode

typedef typedefFT_BEGIN_HEADER struct FTC_MruNodeRec_* FTC_MruNode

Definition at line 61 of file ftcmru.h.

◆ FTC_MruNode_CompareFunc

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

Definition at line 90 of file ftcmru.h.

◆ FTC_MruNode_DoneFunc

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

Definition at line 104 of file ftcmru.h.

◆ FTC_MruNode_InitFunc

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

Definition at line 94 of file ftcmru.h.

◆ FTC_MruNode_ResetFunc

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

Definition at line 99 of file ftcmru.h.

◆ FTC_MruNodeRec

Function Documentation

◆ FTC_MruList_Done()

FTC_MruList_Done ( FTC_MruList  list)

◆ FTC_MruList_Init()

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 FT_LOCAL_DEF, and NULL.

Referenced by ftc_gcache_init(), and FTC_Manager_New().

◆ FTC_MruList_New()

FTC_MruList_New ( FTC_MruList  list,
FT_Pointer  key,
FTC_MruNode anode 
)

◆ FTC_MruList_Remove()

FTC_MruList_Remove ( FTC_MruList  list,
FTC_MruNode  node 
)

◆ FTC_MruList_RemoveSelection()

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(), FTC_MruListRec_::nodes, and NULL.

Referenced by ftc_face_node_done(), and FTC_Manager_RemoveFaceID().

◆ FTC_MruList_Reset()

FTC_MruList_Reset ( FTC_MruList  list)

Definition at line 185 of file ftcmru.c.

References FT_ASSERT, FT_LOCAL_DEF, and FTC_MruList_Remove().

Referenced by FTC_Manager_Reset(), and FTC_MruList_Done().

◆ FTC_MruNode_Prepend()

FTC_MruNode_Prepend ( FTC_MruNode plist,
FTC_MruNode  node 
)

Definition at line 29 of file ftcmru.c.

References FT_LOCAL_DEF.

Referenced by FTC_MruList_New().

◆ FTC_MruNode_Remove()

FTC_MruNode_Remove ( FTC_MruNode plist,
FTC_MruNode  node 
)

Definition at line 122 of file ftcmru.c.

References FT_ASSERT, FT_LOCAL_DEF, and NULL.

Referenced by FTC_MruList_New(), and FTC_MruList_Remove().

◆ FTC_MruNode_Up()

FTC_MruNode_Up ( FTC_MruNode plist,
FTC_MruNode  node 
)

Definition at line 73 of file ftcmru.c.

References FT_ASSERT, FT_LOCAL_DEF, and NULL.

Referenced by FTC_MruList_Done(), and FTC_MruList_New().