Delete all Trailing spaces in code.
[reactos.git] / reactos / dll / 3rdparty / freetype / src / cache / ftcmru.h
index c8f0c6e..40a61c7 100644 (file)
-/***************************************************************************/
-/*                                                                         */
-/*  ftcmru.h                                                               */
-/*                                                                         */
-/*    Simple MRU list-cache (specification).                               */
-/*                                                                         */
-/*  Copyright 2000-2001, 2003, 2004, 2005, 2006 by                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* An MRU is a list that cannot hold more than a certain number of       */
-  /* elements (`max_elements').  All elements in the list are sorted in    */
-  /* least-recently-used order, i.e., the `oldest' element is at the tail  */
-  /* of the list.                                                          */
-  /*                                                                       */
-  /* When doing a lookup (either through `Lookup()' or `Lookup_Node()'),   */
-  /* the list is searched for an element with the corresponding key.  If   */
-  /* it is found, the element is moved to the head of the list and is      */
-  /* returned.                                                             */
-  /*                                                                       */
-  /* If no corresponding element is found, the lookup routine will try to  */
-  /* obtain a new element with the relevant key.  If the list is already   */
-  /* full, the oldest element from the list is discarded and replaced by a */
-  /* new one; a new element is added to the list otherwise.                */
-  /*                                                                       */
-  /* Note that it is possible to pre-allocate the element list nodes.      */
-  /* This is handy if `max_elements' is sufficiently small, as it saves    */
-  /* allocations/releases during the lookup process.                       */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTCMRU_H__
-#define __FTCMRU_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-#define  xxFT_DEBUG_ERROR
-#define  FTC_INLINE
-
-FT_BEGIN_HEADER
-
-  typedef struct FTC_MruNodeRec_*  FTC_MruNode;
-
-  typedef struct  FTC_MruNodeRec_
-  {
-    FTC_MruNode  next;
-    FTC_MruNode  prev;
-
-  } FTC_MruNodeRec;
-
-
-  FT_LOCAL( void )
-  FTC_MruNode_Prepend( FTC_MruNode  *plist,
-                       FTC_MruNode   node );
-
-  FT_LOCAL( void )
-  FTC_MruNode_Up( FTC_MruNode  *plist,
-                  FTC_MruNode   node );
-
-  FT_LOCAL( void )
-  FTC_MruNode_Remove( FTC_MruNode  *plist,
-                      FTC_MruNode   node );
-
-
-  typedef struct FTC_MruListRec_*              FTC_MruList;
-
-  typedef struct FTC_MruListClassRec_ const *  FTC_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_
-  {
-    FT_UInt                  node_size;
-    FTC_MruNode_CompareFunc  node_compare;
-    FTC_MruNode_InitFunc     node_init;
-    FTC_MruNode_ResetFunc    node_reset;
-    FTC_MruNode_DoneFunc     node_done;
-
-  } FTC_MruListClassRec;
-
-  typedef struct  FTC_MruListRec_
-  {
-    FT_UInt              num_nodes;
-    FT_UInt              max_nodes;
-    FTC_MruNode          nodes;
-    FT_Pointer           data;
-    FTC_MruListClassRec  clazz;
-    FT_Memory            memory;
-
-  } FTC_MruListRec;
-
-
-  FT_LOCAL( void )
-  FTC_MruList_Init( FTC_MruList       list,
-                    FTC_MruListClass  clazz,
-                    FT_UInt           max_nodes,
-                    FT_Pointer        data,
-                    FT_Memory         memory );
-
-  FT_LOCAL( void )
-  FTC_MruList_Reset( FTC_MruList  list );
-
-
-  FT_LOCAL( void )
-  FTC_MruList_Done( FTC_MruList  list );
-
-
-  FT_LOCAL( FT_Error )
-  FTC_MruList_New( FTC_MruList   list,
-                   FT_Pointer    key,
-                   FTC_MruNode  *anode );
-
-  FT_LOCAL( void )
-  FTC_MruList_Remove( FTC_MruList  list,
-                      FTC_MruNode  node );
-
-  FT_LOCAL( void )
-  FTC_MruList_RemoveSelection( FTC_MruList              list,
-                               FTC_MruNode_CompareFunc  selection,
-                               FT_Pointer               key );
-
-
-#ifdef FTC_INLINE
-
-#define FTC_MRULIST_LOOKUP_CMP( list, key, compare, node, error )           \
-  FT_BEGIN_STMNT                                                            \
-    FTC_MruNode*             _pfirst  = &(list)->nodes;                     \
-    FTC_MruNode_CompareFunc  _compare = (FTC_MruNode_CompareFunc)(compare); \
-    FTC_MruNode              _first, _node, *_pnode;                        \
-                                                                            \
-                                                                            \
-    error  = 0;                                                             \
-    _first = *(_pfirst);                                                    \
-    _node  = NULL;                                                          \
-                                                                            \
-    if ( _first )                                                           \
-    {                                                                       \
-      _node = _first;                                                       \
-      do                                                                    \
-      {                                                                     \
-        if ( _compare( _node, (key) ) )                                     \
-        {                                                                   \
-          if ( _node != _first )                                            \
-            FTC_MruNode_Up( _pfirst, _node );                               \
-                                                                            \
-          _pnode = (FTC_MruNode*)(void*)&(node);                            \
-          *_pnode = _node;                                                  \
-          goto _MruOk;                                                      \
-        }                                                                   \
-        _node = _node->next;                                                \
-                                                                            \
-      } while ( _node != _first) ;                                          \
-    }                                                                       \
-                                                                            \
-    error = FTC_MruList_New( (list), (key), (FTC_MruNode*)(void*)&(node) ); \
-  _MruOk:                                                                   \
-    ;                                                                       \
-  FT_END_STMNT
-
-#define FTC_MRULIST_LOOKUP( list, key, node, error ) \
-  FTC_MRULIST_LOOKUP_CMP( list, key, (list)->clazz.node_compare, node, error )
-
-#else  /* !FTC_INLINE */
-
-  FT_LOCAL( FTC_MruNode )
-  FTC_MruList_Find( FTC_MruList  list,
-                    FT_Pointer   key );
-
-  FT_LOCAL( FT_Error )
-  FTC_MruList_Lookup( FTC_MruList   list,
-                      FT_Pointer    key,
-                      FTC_MruNode  *pnode );
-
-#define FTC_MRULIST_LOOKUP( list, key, node, error ) \
-  error = FTC_MruList_Lookup( (list), (key), (FTC_MruNode*)&(node) )
-
-#endif /* !FTC_INLINE */
-
-
-#define FTC_MRULIST_LOOP( list, node )        \
-  FT_BEGIN_STMNT                              \
-    FTC_MruNode  _first = (list)->nodes;      \
-                                              \
-                                              \
-    if ( _first )                             \
-    {                                         \
-      FTC_MruNode  _node = _first;            \
-                                              \
-                                              \
-      do                                      \
-      {                                       \
-        *(FTC_MruNode*)&(node) = _node;
-
-
-#define FTC_MRULIST_LOOP_END()               \
-        _node = _node->next;                 \
-                                             \
-      } while ( _node != _first );           \
-    }                                        \
-  FT_END_STMNT
-
- /* */
-
-FT_END_HEADER
-
-
-#endif /* __FTCMRU_H__ */
-
-
-/* END */
+/***************************************************************************/\r
+/*                                                                         */\r
+/*  ftcmru.h                                                               */\r
+/*                                                                         */\r
+/*    Simple MRU list-cache (specification).                               */\r
+/*                                                                         */\r
+/*  Copyright 2000-2001, 2003, 2004, 2005, 2006 by                         */\r
+/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */\r
+/*                                                                         */\r
+/*  This file is part of the FreeType project, and may only be used,       */\r
+/*  modified, and distributed under the terms of the FreeType project      */\r
+/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */\r
+/*  this file you indicate that you have read the license and              */\r
+/*  understand and accept it fully.                                        */\r
+/*                                                                         */\r
+/***************************************************************************/\r
+\r
+\r
+  /*************************************************************************/\r
+  /*                                                                       */\r
+  /* An MRU is a list that cannot hold more than a certain number of       */\r
+  /* elements (`max_elements').  All elements in the list are sorted in    */\r
+  /* least-recently-used order, i.e., the `oldest' element is at the tail  */\r
+  /* of the list.                                                          */\r
+  /*                                                                       */\r
+  /* When doing a lookup (either through `Lookup()' or `Lookup_Node()'),   */\r
+  /* the list is searched for an element with the corresponding key.  If   */\r
+  /* it is found, the element is moved to the head of the list and is      */\r
+  /* returned.                                                             */\r
+  /*                                                                       */\r
+  /* If no corresponding element is found, the lookup routine will try to  */\r
+  /* obtain a new element with the relevant key.  If the list is already   */\r
+  /* full, the oldest element from the list is discarded and replaced by a */\r
+  /* new one; a new element is added to the list otherwise.                */\r
+  /*                                                                       */\r
+  /* Note that it is possible to pre-allocate the element list nodes.      */\r
+  /* This is handy if `max_elements' is sufficiently small, as it saves    */\r
+  /* allocations/releases during the lookup process.                       */\r
+  /*                                                                       */\r
+  /*************************************************************************/\r
+\r
+\r
+#ifndef __FTCMRU_H__\r
+#define __FTCMRU_H__\r
+\r
+\r
+#include <ft2build.h>\r
+#include FT_FREETYPE_H\r
+\r
+#ifdef FREETYPE_H\r
+#error "freetype.h of FreeType 1 has been loaded!"\r
+#error "Please fix the directory search order for header files"\r
+#error "so that freetype.h of FreeType 2 is found first."\r
+#endif\r
+\r
+#define  xxFT_DEBUG_ERROR\r
+#define  FTC_INLINE\r
+\r
+FT_BEGIN_HEADER\r
+\r
+  typedef struct FTC_MruNodeRec_*  FTC_MruNode;\r
+\r
+  typedef struct  FTC_MruNodeRec_\r
+  {\r
+    FTC_MruNode  next;\r
+    FTC_MruNode  prev;\r
+\r
+  } FTC_MruNodeRec;\r
+\r
+\r
+  FT_LOCAL( void )\r
+  FTC_MruNode_Prepend( FTC_MruNode  *plist,\r
+                       FTC_MruNode   node );\r
+\r
+  FT_LOCAL( void )\r
+  FTC_MruNode_Up( FTC_MruNode  *plist,\r
+                  FTC_MruNode   node );\r
+\r
+  FT_LOCAL( void )\r
+  FTC_MruNode_Remove( FTC_MruNode  *plist,\r
+                      FTC_MruNode   node );\r
+\r
+\r
+  typedef struct FTC_MruListRec_*              FTC_MruList;\r
+\r
+  typedef struct FTC_MruListClassRec_ const *  FTC_MruListClass;\r
+\r
+\r
+  typedef FT_Bool\r
+  (*FTC_MruNode_CompareFunc)( FTC_MruNode  node,\r
+                              FT_Pointer   key );\r
+\r
+  typedef FT_Error\r
+  (*FTC_MruNode_InitFunc)( FTC_MruNode  node,\r
+                           FT_Pointer   key,\r
+                           FT_Pointer   data );\r
+\r
+  typedef FT_Error\r
+  (*FTC_MruNode_ResetFunc)( FTC_MruNode  node,\r
+                            FT_Pointer   key,\r
+                            FT_Pointer   data );\r
+\r
+  typedef void\r
+  (*FTC_MruNode_DoneFunc)( FTC_MruNode  node,\r
+                           FT_Pointer   data );\r
+\r
+\r
+  typedef struct  FTC_MruListClassRec_\r
+  {\r
+    FT_UInt                  node_size;\r
+    FTC_MruNode_CompareFunc  node_compare;\r
+    FTC_MruNode_InitFunc     node_init;\r
+    FTC_MruNode_ResetFunc    node_reset;\r
+    FTC_MruNode_DoneFunc     node_done;\r
+\r
+  } FTC_MruListClassRec;\r
+\r
+  typedef struct  FTC_MruListRec_\r
+  {\r
+    FT_UInt              num_nodes;\r
+    FT_UInt              max_nodes;\r
+    FTC_MruNode          nodes;\r
+    FT_Pointer           data;\r
+    FTC_MruListClassRec  clazz;\r
+    FT_Memory            memory;\r
+\r
+  } FTC_MruListRec;\r
+\r
+\r
+  FT_LOCAL( void )\r
+  FTC_MruList_Init( FTC_MruList       list,\r
+                    FTC_MruListClass  clazz,\r
+                    FT_UInt           max_nodes,\r
+                    FT_Pointer        data,\r
+                    FT_Memory         memory );\r
+\r
+  FT_LOCAL( void )\r
+  FTC_MruList_Reset( FTC_MruList  list );\r
+\r
+\r
+  FT_LOCAL( void )\r
+  FTC_MruList_Done( FTC_MruList  list );\r
+\r
+\r
+  FT_LOCAL( FT_Error )\r
+  FTC_MruList_New( FTC_MruList   list,\r
+                   FT_Pointer    key,\r
+                   FTC_MruNode  *anode );\r
+\r
+  FT_LOCAL( void )\r
+  FTC_MruList_Remove( FTC_MruList  list,\r
+                      FTC_MruNode  node );\r
+\r
+  FT_LOCAL( void )\r
+  FTC_MruList_RemoveSelection( FTC_MruList              list,\r
+                               FTC_MruNode_CompareFunc  selection,\r
+                               FT_Pointer               key );\r
+\r
+\r
+#ifdef FTC_INLINE\r
+\r
+#define FTC_MRULIST_LOOKUP_CMP( list, key, compare, node, error )           \\r
+  FT_BEGIN_STMNT                                                            \\r
+    FTC_MruNode*             _pfirst  = &(list)->nodes;                     \\r
+    FTC_MruNode_CompareFunc  _compare = (FTC_MruNode_CompareFunc)(compare); \\r
+    FTC_MruNode              _first, _node, *_pnode;                        \\r
+                                                                            \\r
+                                                                            \\r
+    error  = 0;                                                             \\r
+    _first = *(_pfirst);                                                    \\r
+    _node  = NULL;                                                          \\r
+                                                                            \\r
+    if ( _first )                                                           \\r
+    {                                                                       \\r
+      _node = _first;                                                       \\r
+      do                                                                    \\r
+      {                                                                     \\r
+        if ( _compare( _node, (key) ) )                                     \\r
+        {                                                                   \\r
+          if ( _node != _first )                                            \\r
+            FTC_MruNode_Up( _pfirst, _node );                               \\r
+                                                                            \\r
+          _pnode = (FTC_MruNode*)(void*)&(node);                            \\r
+          *_pnode = _node;                                                  \\r
+          goto _MruOk;                                                      \\r
+        }                                                                   \\r
+        _node = _node->next;                                                \\r
+                                                                            \\r
+      } while ( _node != _first) ;                                          \\r
+    }                                                                       \\r
+                                                                            \\r
+    error = FTC_MruList_New( (list), (key), (FTC_MruNode*)(void*)&(node) ); \\r
+  _MruOk:                                                                   \\r
+    ;                                                                       \\r
+  FT_END_STMNT\r
+\r
+#define FTC_MRULIST_LOOKUP( list, key, node, error ) \\r
+  FTC_MRULIST_LOOKUP_CMP( list, key, (list)->clazz.node_compare, node, error )\r
+\r
+#else  /* !FTC_INLINE */\r
+\r
+  FT_LOCAL( FTC_MruNode )\r
+  FTC_MruList_Find( FTC_MruList  list,\r
+                    FT_Pointer   key );\r
+\r
+  FT_LOCAL( FT_Error )\r
+  FTC_MruList_Lookup( FTC_MruList   list,\r
+                      FT_Pointer    key,\r
+                      FTC_MruNode  *pnode );\r
+\r
+#define FTC_MRULIST_LOOKUP( list, key, node, error ) \\r
+  error = FTC_MruList_Lookup( (list), (key), (FTC_MruNode*)&(node) )\r
+\r
+#endif /* !FTC_INLINE */\r
+\r
+\r
+#define FTC_MRULIST_LOOP( list, node )        \\r
+  FT_BEGIN_STMNT                              \\r
+    FTC_MruNode  _first = (list)->nodes;      \\r
+                                              \\r
+                                              \\r
+    if ( _first )                             \\r
+    {                                         \\r
+      FTC_MruNode  _node = _first;            \\r
+                                              \\r
+                                              \\r
+      do                                      \\r
+      {                                       \\r
+        *(FTC_MruNode*)&(node) = _node;\r
+\r
+\r
+#define FTC_MRULIST_LOOP_END()               \\r
+        _node = _node->next;                 \\r
+                                             \\r
+      } while ( _node != _first );           \\r
+    }                                        \\r
+  FT_END_STMNT\r
+\r
+ /* */\r
+\r
+FT_END_HEADER\r
+\r
+\r
+#endif /* __FTCMRU_H__ */\r
+\r
+\r
+/* END */\r