eg_heap.h File Reference

#include <stdio.h>
#include <limits.h>
#include <float.h>
#include "eg_mempool.h"
#include "eg_fp.h"

Include dependency graph for eg_heap.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  EGheap_t
struct  EGheapConnector_t

Defines

#define EG_HEAP_COST_MAX   EGFP_MAX25
#define EG_HEAP_COST_TYPE   FP25_TYPE
#define EGheapCostAdd(a, b)   EGfpAdd25(a,b)
#define EGheapCostDiv(a, b)   EGfpDiv25(a,b)
#define EGheapCostIsLess(a, b)   ((a)<(b))
#define EGheapCostMinus(a)   EGfpMinus25(a)
#define EGheapCostMul(a, b)   EGfpMul25(a,b)
#define EGheapCostSub(a, b)   EGfpSub25(a,b)
#define EGheapCostToLf(a)   fptolf25(a)
#define EGheapToCost(a)   lftofp25(a)

Typedefs

typedef EGfp25_t EGheapCost_t

Functions

void EGfreeHeap (void *v, EGmemPool_t *mem)
void EGfreeHeapConnector (void *v, EGmemPool_t *mem)
int EGheapAttach (EGheap_t *h, EGheapConnector_t *h_con)
void EGheapClear (EGheap_t *h, EGmemPool_t *mem)
int EGheapDecreaseVal (EGheap_t *h, EGheapConnector_t *hc, EGheapCost_t val)
int EGheapDeleteMin (EGheap_t *h, EGmemPool_t *mem)
EGheapConnector_tEGheapGetMin (EGheap_t *h)
unsigned int EGheapGetMinChild (EGheap_t *h, unsigned int pos)
void * EGheapGetMinThis (EGheap_t *h)
EGheapCost_t EGheapGetMinVal (EGheap_t *h)
int EGheapIncreaseVal (EGheap_t *h, EGheapConnector_t *hc, EGheapCost_t val)
EGheapConnector_tEGheapInsert (EGheap_t *h, void *obj, EGheapCost_t val, EGmemPool_t *mem)
int EGheapSiftDown (EGheap_t *h, unsigned int pos)
int EGheapSiftup (EGheap_t *h, unsigned int current_pos)
int EGheapUnattachMin (EGheap_t *h)
EGheap_tEGnewHeap (EGmemPool_t *mem, unsigned int d, unsigned int n)
EGheapConnector_tEGnewHeapConnector (EGmemPool_t *mem, void *obj, EGheapCost_t val, unsigned int pos)


Define Documentation

#define EG_HEAP_COST_MAX   EGFP_MAX25
 

Definition at line 113 of file eg_heap.h.

#define EG_HEAP_COST_TYPE   FP25_TYPE
 

Definition at line 33 of file eg_heap.h.

#define EGheapCostAdd a,
 )     EGfpAdd25(a,b)
 

Definition at line 105 of file eg_heap.h.

#define EGheapCostDiv a,
 )     EGfpDiv25(a,b)
 

Definition at line 108 of file eg_heap.h.

#define EGheapCostIsLess a,
 )     ((a)<(b))
 

Definition at line 107 of file eg_heap.h.

#define EGheapCostMinus  )     EGfpMinus25(a)
 

Definition at line 111 of file eg_heap.h.

#define EGheapCostMul a,
 )     EGfpMul25(a,b)
 

Definition at line 109 of file eg_heap.h.

#define EGheapCostSub a,
 )     EGfpSub25(a,b)
 

Definition at line 106 of file eg_heap.h.

#define EGheapCostToLf  )     fptolf25(a)
 

Definition at line 110 of file eg_heap.h.

#define EGheapToCost  )     lftofp25(a)
 

Definition at line 112 of file eg_heap.h.


Typedef Documentation

typedef EGfp25_t EGheapCost_t
 

Definition at line 104 of file eg_heap.h.


Function Documentation

void EGfreeHeap void *  v,
EGmemPool_t mem
[inline]
 

Definition at line 463 of file eg_heap.h.

Here is the call graph for this function:

void EGfreeHeapConnector void *  v,
EGmemPool_t mem
[inline]
 

Definition at line 437 of file eg_heap.h.

int EGheapAttach EGheap_t h,
EGheapConnector_t h_con
[inline]
 

Definition at line 216 of file eg_heap.h.

Here is the call graph for this function:

void EGheapClear EGheap_t h,
EGmemPool_t mem
[inline]
 

Definition at line 446 of file eg_heap.h.

Here is the call graph for this function:

int EGheapDecreaseVal EGheap_t h,
EGheapConnector_t hc,
EGheapCost_t  val
[inline]
 

Definition at line 340 of file eg_heap.h.

Here is the call graph for this function:

int EGheapDeleteMin EGheap_t h,
EGmemPool_t mem
[inline]
 

Definition at line 395 of file eg_heap.h.

Here is the call graph for this function:

EGheapConnector_t* EGheapGetMin EGheap_t h  )  [inline]
 

Definition at line 159 of file eg_heap.h.

unsigned int EGheapGetMinChild EGheap_t h,
unsigned int  pos
[inline]
 

Definition at line 355 of file eg_heap.h.

void* EGheapGetMinThis EGheap_t h  )  [inline]
 

Definition at line 151 of file eg_heap.h.

EGheapCost_t EGheapGetMinVal EGheap_t h  )  [inline]
 

Definition at line 143 of file eg_heap.h.

int EGheapIncreaseVal EGheap_t h,
EGheapConnector_t hc,
EGheapCost_t  val
[inline]
 

Definition at line 326 of file eg_heap.h.

Here is the call graph for this function:

EGheapConnector_t* EGheapInsert EGheap_t h,
void *  obj,
EGheapCost_t  val,
EGmemPool_t mem
[inline]
 

Definition at line 225 of file eg_heap.h.

Here is the call graph for this function:

int EGheapSiftDown EGheap_t h,
unsigned int  pos
[inline]
 

Definition at line 245 of file eg_heap.h.

int EGheapSiftup EGheap_t h,
unsigned int  current_pos
[inline]
 

Definition at line 185 of file eg_heap.h.

int EGheapUnattachMin EGheap_t h  )  [inline]
 

Definition at line 383 of file eg_heap.h.

Here is the call graph for this function:

EGheap_t* EGnewHeap EGmemPool_t mem,
unsigned int  d,
unsigned int  n
[inline]
 

Definition at line 417 of file eg_heap.h.

EGheapConnector_t* EGnewHeapConnector EGmemPool_t mem,
void *  obj,
EGheapCost_t  val,
unsigned int  pos
[inline]
 

Definition at line 167 of file eg_heap.h.


Generated on Mon Jan 30 08:51:30 2006 for EGlib by  doxygen 1.4.5