tesseract-doxygen/cutil/oldheap.h File Reference

#include "general.h"
#include "cutil.h"

Go to the source code of this file.

Classes

struct  HEAPENTRY
struct  HEAP

Defines

#define HEAPFULL   3000
#define OK   0
#define EMPTY   -1
#define FreeHeap(H)   memfree(H)
#define MaxSizeOfHeap(H)   (H->Size)
#define SizeOfHeap(H)   (H->FirstFree - 1)
#define InitHeap(H)   (H->FirstFree = 1)
#define HeapFull(H)   ((H)->FirstFree > (H)->Size)
#define HeapEmpty(H)   ((H)->FirstFree <= 1)
#define HeapKeyFor(H, E)   ((H)->Entry[(E)+1].Key)
#define HeapDataFor(H, E)   ((H)->Entry[(E)+1].Data)

Functions

HEAP * MakeHeap (int Size)
int HeapPop (HEAP *Heap, FLOAT32 *Key, void *out_ptr)
int HeapPopWorst (HEAP *Heap, FLOAT32 *Key, void *out_ptr)
void HeapPush (HEAP *Heap, FLOAT32 Key, void *Data)
void HeapStore (HEAP *Heap, HEAPENTRY *Entry)
int GetTopOfHeap (HEAP *Heap, HEAPENTRY *Entry)
void FreeHeapData (HEAP *Heap, void_dest destructor)

Define Documentation

#define EMPTY   -1
#define FreeHeap ( H   )     memfree(H)

---------------------------------------------------------------------------- Macros ----------------------------------------------------------------------------

#define HeapDataFor ( H,
E   )     ((H)->Entry[(E)+1].Data)
#define HeapEmpty ( H   )     ((H)->FirstFree <= 1)
#define HeapFull ( H   )     ((H)->FirstFree > (H)->Size)
#define HEAPFULL   3000

---------------------------------------------------------------------------- Include Files and Type Defines ----------------------------------------------------------------------------

#define HeapKeyFor ( H,
E   )     ((H)->Entry[(E)+1].Key)
#define InitHeap ( H   )     (H->FirstFree = 1)
#define MaxSizeOfHeap ( H   )     (H->Size)
#define OK   0
#define SizeOfHeap ( H   )     (H->FirstFree - 1)

Function Documentation

void FreeHeapData ( HEAP *  Heap,
void_dest  destructor 
)
int GetTopOfHeap ( HEAP *  Heap,
HEAPENTRY *  Entry 
)
int HeapPop ( HEAP *  Heap,
FLOAT32 *  Key,
void *  out_ptr 
)
int HeapPopWorst ( HEAP *  Heap,
FLOAT32 *  Key,
void *  out_ptr 
)
void HeapPush ( HEAP *  Heap,
FLOAT32  Key,
void *  Data 
)
void HeapStore ( HEAP *  Heap,
HEAPENTRY *  Entry 
)
HEAP* MakeHeap ( int  Size  ) 

---------------------------------------------------------------------------- Public Function Prototypes ----------------------------------------------------------------------------

---------------------------------------------------------------------------- Public Code ----------------------------------------------------------------------------

Generated on Sun Jul 18 17:10:50 2010 for Tesseract by  doxygen 1.6.3