eg_ugraph.h File Reference

#include <stdio.h>
#include <limits.h>
#include <stddef.h>
#include "eg_config.h"
#include "eg_macros.h"
#include "eg_io.h"
#include "eg_list.h"
#include "eg_listint.h"
#include "eg_mempool.h"

Include dependency graph for eg_ugraph.h:

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

Go to the source code of this file.

Data Structures

struct  EGuGraph_t
struct  EGuGraphEdge_t
struct  EGuGraphNode_t

Defines

#define __EG_UGRAPH_CHECK__   0
#define UG_LEVEL   9

Functions

void EGfreeUGraph (void *v)
void EGfreeUGraphEdge (void *v, EGmemPool_t *mem)
void EGfreeUGraphNode (void *v)
EGuGraph_tEGnewUGraph (EGmemPool_t *mem)
EGuGraphEdge_tEGnewUGraphEdge (EGmemPool_t *mem)
EGuGraphNode_tEGnewUGraphNode (EGmemPool_t *mem)
EGuGraphEdge_tEGuGraphAddEdge (EGuGraph_t *G, void *edata, EGuGraphNode_t *head, EGuGraphNode_t *tail)
EGuGraphNode_tEGuGraphAddNode (EGuGraph_t *G, void *ndata)
int EGuGraphAttachEdge (EGuGraph_t *G, EGuGraphEdge_t *e)
int EGuGraphAttachNode (EGuGraph_t *G, EGuGraphNode_t *n)
int EGuGraphBreakUpComponents (EGuGraph_t *G, EGlist_t *G_list, EGmemPool_t *mem)
void EGuGraphClear (EGuGraph_t *G, EGfree_f userFreeEdgeData, EGfree_f userFreeNodeData, EGfree_f userFreeUGraphData)
void EGuGraphClearMP (EGuGraph_t *G, EGfreeMP_f userFreeEdgeDataMP, EGfreeMP_f userFreeNodeDataMP, EGfreeMP_f userFreeUGraphDataMP, EGmemPool_t *edge_data_mem, EGmemPool_t *node_data_mem, EGmemPool_t *uGraph_data_mem)
int EGuGraphComponents (EGuGraph_t *G, int *num_components, EGuGraphNode_t **nodes, int *comps, EGmemPool_t *mem)
int EGuGraphDisplay (EGuGraph_t *G, EGdisplay_f userDisplayUGraphData, EGdisplay_f userDisplayNodeData, EGdisplay_f userDisplayEdgeData, FILE *file)
void EGuGraphEraseEdge (EGuGraph_t *G, EGuGraphEdge_t *e, EGfree_f userFreeEdgeData)
void EGuGraphEraseEdgeMP (EGuGraph_t *G, EGuGraphEdge_t *e, EGfreeMP_f userFreeEdgeDataMP, EGmemPool_t *edge_data_mem)
void EGuGraphEraseNode (EGuGraph_t *G, EGuGraphNode_t *v, EGfree_f userFreeEdgeData, EGfree_f userFreeNodeData)
void EGuGraphEraseNodeMP (EGuGraph_t *G, EGuGraphNode_t *v, EGfreeMP_f userFreeEdgeDataMP, EGfreeMP_f userFreeNodeDataMP, EGmemPool_t *node_data_mem, EGmemPool_t *edge_data_mem)
int EGuGraphExport (EGuGraph_t *G, int *edges, void **gdata, void **edata, void **ndata)
EGuGraph_tEGuGraphImport (int nnodes, int nedges, int *edges, void *gdata, void **edata, void **ndata, EGmemPool_t *mem)
int EGuGraphIsConnected (EGuGraph_t *G, EGmemPool_t *mem)
EGlistNode_tEGuGraphOtherEit (EGuGraphEdge_t *e, EGuGraphNode_t *n)
EGuGraphNode_tEGuGraphOtherEnd (EGuGraphEdge_t *e, EGuGraphNode_t *n)
int EGuGraphRenumberNodeId (EGuGraph_t *G)
int EGuGraphResetEdgeId (EGuGraph_t *G)
int EGuGraphResetNodeId (EGuGraph_t *G)
int EGuGraphSetOtherEit (EGuGraphEdge_t *e, EGuGraphNode_t *n, EGlistNode_t *other_eit)
int EGuGraphUnattachEdge (EGuGraph_t *G, EGuGraphEdge_t *e)
int EGuGraphUnattachNode (EGuGraph_t *G, EGuGraphNode_t *n)


Define Documentation

#define __EG_UGRAPH_CHECK__   0
 

Implementation of basic uGraph support, the idea is that this structure should be flexible enough to support fast uGraph algorithm.

2003-06-13 - First implementation (Marcos). 2004-02-04 - Added support for importing graphs from Cook format (Marcos)

Definition at line 42 of file eg_ugraph.h.

#define UG_LEVEL   9
 

Definition at line 44 of file eg_ugraph.h.


Function Documentation

void EGfreeUGraph void *  v  ) 
 

Definition at line 204 of file eg_ugraph.c.

Here is the call graph for this function:

void EGfreeUGraphEdge void *  v,
EGmemPool_t mem
 

Definition at line 236 of file eg_ugraph.c.

void EGfreeUGraphNode void *  v  ) 
 

Definition at line 218 of file eg_ugraph.c.

Here is the call graph for this function:

EGuGraph_t* EGnewUGraph EGmemPool_t mem  ) 
 

Definition at line 155 of file eg_ugraph.c.

Here is the call graph for this function:

EGuGraphEdge_t* EGnewUGraphEdge EGmemPool_t mem  ) 
 

Definition at line 188 of file eg_ugraph.c.

EGuGraphNode_t* EGnewUGraphNode EGmemPool_t mem  ) 
 

Definition at line 172 of file eg_ugraph.c.

Here is the call graph for this function:

EGuGraphEdge_t* EGuGraphAddEdge EGuGraph_t G,
void *  edata,
EGuGraphNode_t head,
EGuGraphNode_t tail
[inline]
 

Definition at line 171 of file eg_ugraph.h.

Here is the call graph for this function:

EGuGraphNode_t* EGuGraphAddNode EGuGraph_t G,
void *  ndata
[inline]
 

Definition at line 153 of file eg_ugraph.h.

Here is the call graph for this function:

int EGuGraphAttachEdge EGuGraph_t G,
EGuGraphEdge_t e
 

Definition at line 97 of file eg_ugraph.c.

Here is the call graph for this function:

int EGuGraphAttachNode EGuGraph_t G,
EGuGraphNode_t n
 

Definition at line 64 of file eg_ugraph.c.

Here is the call graph for this function:

int EGuGraphBreakUpComponents EGuGraph_t G,
EGlist_t G_list,
EGmemPool_t mem
 

Definition at line 694 of file eg_ugraph.c.

Here is the call graph for this function:

void EGuGraphClear EGuGraph_t G,
EGfree_f  userFreeEdgeData,
EGfree_f  userFreeNodeData,
EGfree_f  userFreeUGraphData
 

Definition at line 249 of file eg_ugraph.c.

Here is the call graph for this function:

void EGuGraphClearMP EGuGraph_t G,
EGfreeMP_f  userFreeEdgeDataMP,
EGfreeMP_f  userFreeNodeDataMP,
EGfreeMP_f  userFreeUGraphDataMP,
EGmemPool_t edge_data_mem,
EGmemPool_t node_data_mem,
EGmemPool_t uGraph_data_mem
 

Definition at line 276 of file eg_ugraph.c.

Here is the call graph for this function:

int EGuGraphComponents EGuGraph_t G,
int *  num_components,
EGuGraphNode_t **  nodes,
int *  comps,
EGmemPool_t mem
 

Definition at line 781 of file eg_ugraph.c.

Here is the call graph for this function:

int EGuGraphDisplay EGuGraph_t G,
EGdisplay_f  userDisplayUGraphData,
EGdisplay_f  userDisplayNodeData,
EGdisplay_f  userDisplayEdgeData,
FILE *  file
 

Definition at line 621 of file eg_ugraph.c.

void EGuGraphEraseEdge EGuGraph_t G,
EGuGraphEdge_t e,
EGfree_f  userFreeEdgeData
 

Definition at line 309 of file eg_ugraph.c.

Here is the call graph for this function:

void EGuGraphEraseEdgeMP EGuGraph_t G,
EGuGraphEdge_t e,
EGfreeMP_f  userFreeEdgeDataMP,
EGmemPool_t edge_data_mem
 

Definition at line 350 of file eg_ugraph.c.

Here is the call graph for this function:

void EGuGraphEraseNode EGuGraph_t G,
EGuGraphNode_t v,
EGfree_f  userFreeEdgeData,
EGfree_f  userFreeNodeData
 

Definition at line 383 of file eg_ugraph.c.

Here is the call graph for this function:

void EGuGraphEraseNodeMP EGuGraph_t G,
EGuGraphNode_t v,
EGfreeMP_f  userFreeEdgeDataMP,
EGfreeMP_f  userFreeNodeDataMP,
EGmemPool_t node_data_mem,
EGmemPool_t edge_data_mem
 

Definition at line 412 of file eg_ugraph.c.

Here is the call graph for this function:

int EGuGraphExport EGuGraph_t G,
int *  edges,
void **  gdata,
void **  edata,
void **  ndata
 

Definition at line 527 of file eg_ugraph.c.

Here is the call graph for this function:

EGuGraph_t* EGuGraphImport int  nnodes,
int  nedges,
int *  edges,
void *  gdata,
void **  edata,
void **  ndata,
EGmemPool_t mem
 

Definition at line 578 of file eg_ugraph.c.

Here is the call graph for this function:

int EGuGraphIsConnected EGuGraph_t G,
EGmemPool_t mem
 

Definition at line 749 of file eg_ugraph.c.

Here is the call graph for this function:

EGlistNode_t* EGuGraphOtherEit EGuGraphEdge_t e,
EGuGraphNode_t n
 

Definition at line 33 of file eg_ugraph.c.

EGuGraphNode_t* EGuGraphOtherEnd EGuGraphEdge_t e,
EGuGraphNode_t n
 

Definition at line 22 of file eg_ugraph.c.

int EGuGraphRenumberNodeId EGuGraph_t G  ) 
 

Definition at line 502 of file eg_ugraph.c.

int EGuGraphResetEdgeId EGuGraph_t G  ) 
 

Definition at line 494 of file eg_ugraph.c.

int EGuGraphResetNodeId EGuGraph_t G  ) 
 

Definition at line 488 of file eg_ugraph.c.

int EGuGraphSetOtherEit EGuGraphEdge_t e,
EGuGraphNode_t n,
EGlistNode_t other_eit
 

Definition at line 44 of file eg_ugraph.c.

int EGuGraphUnattachEdge EGuGraph_t G,
EGuGraphEdge_t e
 

Definition at line 140 of file eg_ugraph.c.

Here is the call graph for this function:

int EGuGraphUnattachNode EGuGraph_t G,
EGuGraphNode_t n
 

Definition at line 110 of file eg_ugraph.c.

Here is the call graph for this function:


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