graph.h File Reference

#include "heap.h"
#include "tree.h"

Include dependency graph for graph.h:

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

Go to the source code of this file.

Data Structures

struct  _dglSPClipInput
struct  _dglSPClipOutput
struct  _dglSpanClipInput
struct  _dglSpanClipOutput
struct  dglNodePrioritizer_s
struct  dglEdgePrioritizer_s
struct  _dglGraph
struct  _dglSPArc
struct  _dglSPReport
struct  dglSPCache_s
struct  dglNodeTraverser_s
struct  dglEdgesetTraverser_s
struct  dglEdgeTraverser_s
struct  dglIOContext_s

Defines

#define DGL_GS_FLAT   0x1
#define DGL_GF_COMPLETE   0x1
#define DGL_GF_BIPARTITE   0x2
#define DGL_GF_REGULAR   0x4
#define DGL_GF_BOUQUET   0x8
#define DGL_GF_DIPOLE   0x10
#define DGL_GF_PATH   0x20
#define DGL_GF_CYCLE   0x40
#define DGL_GO_EdgePrioritize_COST   0x10
#define DGL_GO_EdgePrioritize_ATTR   0x20
#define DGL_GO_NodePrioritize_ATTR   0x40
#define DGL_NS_HEAD   0x1
#define DGL_NS_TAIL   0x2
#define DGL_NS_ALONE   0x4
#define DGL_ES_DIRECTED   0x1
#define DGL_ENDIAN_BIG   1
#define DGL_ENDIAN_LITTLE   2
#define DGL_STRONGCONNECT   0x1
#define DGL_ALONE   0x2
#define DGL_MERGE_EDGE   0x4
#define DGL_ERR_BadVersion   1
#define DGL_ERR_BadNodeType   2
#define DGL_ERR_MemoryExhausted   3
#define DGL_ERR_HeapError   4
#define DGL_ERR_UndefinedMethod   5
#define DGL_ERR_Write   6
#define DGL_ERR_Read   7
#define DGL_ERR_NotSupported   8
#define DGL_ERR_UnknownByteOrder   9
#define DGL_ERR_HeadNodeNotFound   10
#define DGL_ERR_TailNodeNotFound   11
#define DGL_ERR_BadEdge   12
#define DGL_ERR_BadOnFlatGraph   13
#define DGL_ERR_BadOnTreeGraph   14
#define DGL_ERR_NodeNotFound   15
#define DGL_ERR_TreeSearchError   16
#define DGL_ERR_UnexpectedNullPointer   17
#define DGL_ERR_VersionNotSupported   18
#define DGL_ERR_EdgeNotFound   19
#define DGL_ERR_NodeAlreadyExist   20
#define DGL_ERR_NodeIsAComponent   21
#define DGL_ERR_EdgeAlreadyExist   22
#define DGL_ERR_BadArgument   23

Typedefs

typedef struct _dglSPClipInput dglSPClipInput_s
typedef struct _dglSPClipOutput dglSPClipOutput_s
typedef struct _dglSpanClipInput dglSpanClipInput_s
typedef struct _dglSpanClipOutput dglSpanClipOutput_s
typedef struct _dglGraph dglGraph_s
typedef int(* dglSPClip_fn )(dglGraph_s *, dglSPClipInput_s *, dglSPClipOutput_s *, void *)
typedef int(* dglSpanClip_fn )(dglGraph_s *, dglGraph_s *, dglSpanClipInput_s *, dglSpanClipOutput_s *, void *)
typedef struct _dglSPArc dglSPArc_s
typedef struct _dglSPReport dglSPReport_s
typedef int(* dglWriteChunk_fn )(dglGraph_s *, unsigned char *pbChunk, int cbChunk, void *pvArg)

Functions

int dglInitialize (dglGraph_s *pGraph, dglByte_t Version, dglInt32_t NodeAttrSize, dglInt32_t EdgeAttrSize, dglInt32_t *pOpaqueSet)
int dglRelease (dglGraph_s *pGraph)
int dglUnflatten (dglGraph_s *pGraph)
int dglFlatten (dglGraph_s *pGraph)
void dglResetStats (dglGraph_s *pgraph)
dglInt32_tdglGetNode (dglGraph_s *pGraph, dglInt32_t nNodeId)
int dglAddNode (dglGraph_s *pGraph, dglInt32_t nNodeId, void *pvNodeAttr, dglInt32_t nFlags)
int dglDelNode (dglGraph_s *pGraph, dglInt32_t nNodeId)
dglInt32_t dglNodeGet_Id (dglGraph_s *pGraph, dglInt32_t *pnNode)
dglInt32_tdglNodeGet_OutEdgeset (dglGraph_s *pGraph, dglInt32_t *pnNode)
dglInt32_tdglNodeGet_InEdgeset (dglGraph_s *pGraph, dglInt32_t *pnNode)
dglInt32_t dglNodeGet_Status (dglGraph_s *pGraph, dglInt32_t *pnNode)
dglInt32_tdglNodeGet_Attr (dglGraph_s *pGraph, dglInt32_t *pnNode)
void dglNodeSet_Attr (dglGraph_s *pGraph, dglInt32_t *pnNode, dglInt32_t *pnAttr)
int dglNodeGet_InDegree (dglGraph_s *pGraph, dglInt32_t *pnNode)
int dglNodeGet_OutDegree (dglGraph_s *pGraph, dglInt32_t *pnNode)
int dglNodeGet_Valence (dglGraph_s *pGraph, dglInt32_t *pnNode)
dglInt32_t dglEdgesetGet_EdgeCount (dglGraph_s *pGraph, dglInt32_t *pnOutEdgeset)
dglInt32_t dglEdgeGet_Id (dglGraph_s *pGraph, dglInt32_t *pnEdge)
dglInt32_t dglEdgeGet_Cost (dglGraph_s *pGraph, dglInt32_t *pnEdge)
dglInt32_tdglEdgeGet_Head (dglGraph_s *pGraph, dglInt32_t *pnEdge)
dglInt32_tdglEdgeGet_Tail (dglGraph_s *pGraph, dglInt32_t *pnEdge)
dglInt32_tdglEdgeGet_Attr (dglGraph_s *pGraph, dglInt32_t *pnEdge)
int dglEdgeSet_Attr (dglGraph_s *pGraph, dglInt32_t *pnAttr, dglInt32_t *pnEdge)
dglInt32_tdglGetEdge (dglGraph_s *pGraph, dglInt32_t nEdgeId)
int dglDelEdge (dglGraph_s *pGraph, dglInt32_t nEdgeId)
int dglAddEdge (dglGraph_s *pGraph, dglInt32_t nHead, dglInt32_t nTail, dglInt32_t nCost, dglInt32_t nEdge)
int dglAddEdgeX (dglGraph_s *pGraph, dglInt32_t nHead, dglInt32_t nTail, dglInt32_t nCost, dglInt32_t nEdge, void *pvFnodeAttr, void *pvTnodeAttr, void *pvEdgeAttr, dglInt32_t nFlags)
int dglWrite (dglGraph_s *pGraph, int fd)
int dglRead (dglGraph_s *pGraph, int fd)
int dglIOContextInitialize (dglGraph_s *, dglIOContext_s *)
void dglIOContextRelease (dglIOContext_s *)
int dglWriteChunk (dglIOContext_s *, dglWriteChunk_fn, void *pvArg)
int dglReadChunk (dglIOContext_s *, dglByte_t *pbChunk, int cbChunk)
int dglShortestPath (dglGraph_s *pGraph, dglSPReport_s **ppReport, dglInt32_t nStartNode, dglInt32_t nDestinationNode, dglSPClip_fn fnClip, void *pvClipArg, dglSPCache_s *pCache)
int dglShortestPathGraph (dglGraph_s *pGraph, dglGraph_s *pGraphOut, dglInt32_t nStartNode, dglInt32_t nDestinationNode, dglSPClip_fn fnClip, void *pvClipArg, dglSPCache_s *pCache)
int dglShortestDistance (dglGraph_s *pGraph, dglInt32_t *pnDistance, dglInt32_t nStartNode, dglInt32_t nDestinationNode, dglSPClip_fn fnClip, void *pvClipArg, dglSPCache_s *pCache)
int dglShortestDistanceGraph (dglGraph_s *pGraph, dglGraph_s *pGraphOut, dglInt32_t nStartNode, dglInt32_t nDestinationNode, dglSPClip_fn fnClip, void *pvClipArg, dglSPCache_s *pCache)
int dglInitializeSPCache (dglGraph_s *pgraph, dglSPCache_s *pCache)
void dglReleaseSPCache (dglGraph_s *pgraph, dglSPCache_s *pCache)
void dglFreeSPReport (dglGraph_s *pGraph, dglSPReport_s *pSPReport)
int dglDepthSpanning (dglGraph_s *pgraphInput, dglGraph_s *pgraphOutput, dglInt32_t nVertexNode, dglSpanClip_fn fnClip, void *pvClipArg)
int dglDepthComponents (dglGraph_s *pgraphInput, dglGraph_s *pgraphComponents, int cgraphComponents, dglSpanClip_fn fnClip, void *pvClipArg)
int dglMinimumSpanning (dglGraph_s *pgraphInput, dglGraph_s *pgraphOutput, dglInt32_t nVertexNode, dglSpanClip_fn fnClip, void *pvClipArg)
int dglErrno (dglGraph_s *pgraph)
char * dglStrerror (dglGraph_s *pgraph)
int dglGet_Version (dglGraph_s *pGraph)
void dglSet_Version (dglGraph_s *pGraph, int Version)
int dglGet_Endianess (dglGraph_s *pGraph)
int dglGet_NodeAttrSize (dglGraph_s *pGraph)
int dglGet_EdgeAttrSize (dglGraph_s *pGraph)
int dglGet_NodeCount (dglGraph_s *pGraph)
int dglGet_HeadNodeCount (dglGraph_s *pGraph)
int dglGet_TailNodeCount (dglGraph_s *pGraph)
int dglGet_AloneNodeCount (dglGraph_s *pGraph)
int dglGet_EdgeCount (dglGraph_s *pGraph)
int dglGet_State (dglGraph_s *pGraph)
dglInt32_tdglGet_Opaque (dglGraph_s *pGraph)
void dglSet_Opaque (dglGraph_s *pGraph, dglInt32_t *pOpaque)
int dglGet_NodeSize (dglGraph_s *pGraph)
int dglGet_EdgeSize (dglGraph_s *pGraph)
dglInt64_t dglGet_Cost (dglGraph_s *pGraph)
void dglSet_Cost (dglGraph_s *pGraph, dglInt64_t nnCost)
dglInt32_t dglGet_Family (dglGraph_s *pGraph)
void dglSet_Family (dglGraph_s *pGraph, dglInt32_t nFamily)
dglInt32_t dglGet_Options (dglGraph_s *pGraph)
void dglSet_Options (dglGraph_s *pGraph, dglInt32_t nOptions)
dglEdgePrioritizer_sdglGet_EdgePrioritizer (dglGraph_s *pGraph)
dglNodePrioritizer_sdglGet_NodePrioritizer (dglGraph_s *pGraph)
int dglNode_T_Initialize (dglNodeTraverser_s *pTraverser, dglGraph_s *pGraph)
void dglNode_T_Release (dglNodeTraverser_s *pTraverser)
dglInt32_tdglNode_T_First (dglNodeTraverser_s *pTraverser)
dglInt32_tdglNode_T_Last (dglNodeTraverser_s *pTraverser)
dglInt32_tdglNode_T_Next (dglNodeTraverser_s *pTraverser)
dglInt32_tdglNode_T_Prev (dglNodeTraverser_s *pTraverser)
dglInt32_tdglNode_T_Find (dglNodeTraverser_s *pTraverser, dglInt32_t nNodeId)
int dglEdgeset_T_Initialize (dglEdgesetTraverser_s *pTraverser, dglGraph_s *pGraph, dglInt32_t *pnEdgeset)
void dglEdgeset_T_Release (dglEdgesetTraverser_s *pTraverser)
dglInt32_tdglEdgeset_T_First (dglEdgesetTraverser_s *pTraverser)
dglInt32_tdglEdgeset_T_Next (dglEdgesetTraverser_s *pTraverser)
int dglEdge_T_Initialize (dglEdgeTraverser_s *pTraverser, dglGraph_s *pGraph, dglEdgePrioritizer_s *pEdgePrioritizer)
void dglEdge_T_Release (dglEdgeTraverser_s *pTraverser)
dglInt32_tdglEdge_T_First (dglEdgeTraverser_s *pTraverser)
dglInt32_tdglEdge_T_Next (dglEdgeTraverser_s *pTraverser)


Define Documentation

#define DGL_ALONE   0x2

Definition at line 85 of file graph.h.

#define DGL_ENDIAN_BIG   1

Definition at line 76 of file graph.h.

Referenced by dgl_read_V1(), dgl_read_V2(), dglInitialize(), and dglReadChunk().

#define DGL_ENDIAN_LITTLE   2

Definition at line 77 of file graph.h.

Referenced by dgl_read_V1(), dgl_read_V2(), dglInitialize(), dglReadChunk(), and main().

#define DGL_ERR_BadArgument   23

Definition at line 296 of file graph.h.

Referenced by dglInitialize(), and dglStrerror().

#define DGL_ERR_BadEdge   12

Definition at line 285 of file graph.h.

Referenced by DGL_SPAN_MINIMUM_SPANNING_FUNC(), and dglStrerror().

#define DGL_ERR_BadNodeType   2

Definition at line 275 of file graph.h.

Referenced by dglStrerror().

#define DGL_ERR_BadOnFlatGraph   13

Definition at line 286 of file graph.h.

Referenced by DGL_ADD_EDGE_FUNC(), DGL_ADD_NODE_FUNC(), DGL_DEL_EDGE_FUNC(), DGL_DEL_NODE_FUNC(), DGL_FLATTEN_FUNC(), and dglStrerror().

#define DGL_ERR_BadOnTreeGraph   14

Definition at line 287 of file graph.h.

Referenced by dglStrerror().

#define DGL_ERR_BadVersion   1

Definition at line 274 of file graph.h.

Referenced by dglAddEdge(), dglAddEdgeX(), dglAddNode(), dglDelEdge(), dglDelNode(), dglDepthComponents(), dglDepthSpanning(), dglEdge_T_Initialize(), dglEdgeGet_Attr(), dglEdgeGet_Cost(), dglEdgeGet_Head(), dglEdgeGet_Id(), dglEdgeGet_Tail(), dglEdgeSet_Attr(), dglEdgeset_T_First(), dglEdgeset_T_Initialize(), dglEdgeset_T_Next(), dglEdgesetGet_EdgeCount(), dglFlatten(), dglGetEdge(), dglGetNode(), dglInitializeSPCache(), dglMinimumSpanning(), dglNode_T_Find(), dglNode_T_First(), dglNode_T_Initialize(), dglNode_T_Next(), dglNode_T_Release(), dglNodeGet_Attr(), dglNodeGet_Id(), dglNodeGet_InDegree(), dglNodeGet_InEdgeset(), dglNodeGet_OutDegree(), dglNodeGet_OutEdgeset(), dglNodeGet_Status(), dglNodeGet_Valence(), dglRelease(), dglReleaseSPCache(), dglShortestDistance(), dglShortestPath(), dglStrerror(), dglUnflatten(), and dglWrite().

#define DGL_ERR_EdgeAlreadyExist   22

Definition at line 295 of file graph.h.

Referenced by DGL_ADD_EDGE_FUNC(), and dglStrerror().

#define DGL_ERR_EdgeNotFound   19

Definition at line 292 of file graph.h.

Referenced by DGL_DEL_EDGE_FUNC(), and dglStrerror().

#define DGL_ERR_HeadNodeNotFound   10

Definition at line 283 of file graph.h.

Referenced by DGL_FLATTEN_FUNC(), DGL_SPAN_DEPTHFIRST_SPANNING_FUNC(), DGL_SPAN_MINIMUM_SPANNING_FUNC(), and dglStrerror().

#define DGL_ERR_HeapError   4

Definition at line 277 of file graph.h.

Referenced by DGL_SPAN_MINIMUM_SPANNING_FUNC(), and dglStrerror().

#define DGL_ERR_MemoryExhausted   3

Definition at line 276 of file graph.h.

Referenced by DGL_ADD_EDGE_FUNC(), DGL_ADD_NODE_FUNC(), DGL_DEL_NODE_INEDGE_FUNC(), DGL_DEL_NODE_OUTEDGE_FUNC(), dgl_edge_prioritizer_add(), dgl_edge_prioritizer_del(), DGL_EDGE_T_INITIALIZE_FUNC(), DGL_FLATTEN_FUNC(), dgl_initialize_V1(), dgl_initialize_V2(), DGL_NODE_T_INITIALIZE_FUNC(), dgl_read_V1(), dgl_read_V2(), DGL_SPAN_DEPTHFIRST_SPANNING_FUNC(), dglDepthComponents(), dglDepthSpanning(), and dglStrerror().

#define DGL_ERR_NodeAlreadyExist   20

Definition at line 293 of file graph.h.

Referenced by DGL_ADD_NODE_FUNC(), and dglStrerror().

#define DGL_ERR_NodeIsAComponent   21

Definition at line 294 of file graph.h.

Referenced by DGL_GET_NODE_INEDGESET_FUNC(), DGL_GET_NODE_OUTEDGESET_FUNC(), and dglStrerror().

#define DGL_ERR_NodeNotFound   15

Definition at line 288 of file graph.h.

Referenced by DGL_DEL_NODE_FUNC(), and dglStrerror().

#define DGL_ERR_NotSupported   8

Definition at line 281 of file graph.h.

Referenced by DGL_DEL_EDGE_FUNC(), DGL_DEL_NODE_FUNC(), DGL_EDGE_T_FIRST_FUNC(), DGL_EDGE_T_INITIALIZE_FUNC(), DGL_EDGE_T_NEXT_FUNC(), DGL_EDGE_T_RELEASE_FUNC(), DGL_GET_EDGE_FUNC(), DGL_GET_NODE_INEDGESET_FUNC(), dglNodeGet_InDegree(), dglNodeGet_InEdgeset(), and dglStrerror().

#define DGL_ERR_Read   7

Definition at line 280 of file graph.h.

Referenced by dgl_read_V1(), dgl_read_V2(), dglRead(), and dglStrerror().

#define DGL_ERR_TailNodeNotFound   11

Definition at line 284 of file graph.h.

Referenced by DGL_FLATTEN_FUNC(), and dglStrerror().

#define DGL_ERR_TreeSearchError   16

Definition at line 289 of file graph.h.

Referenced by dglStrerror().

#define DGL_ERR_UndefinedMethod   5

Definition at line 278 of file graph.h.

Referenced by dglStrerror().

#define DGL_ERR_UnexpectedNullPointer   17

Definition at line 290 of file graph.h.

Referenced by DGL_DEL_EDGE_FUNC(), DGL_DEL_NODE_FUNC(), DGL_FLATTEN_FUNC(), DGL_GET_NODE_INEDGESET_FUNC(), DGL_GET_NODE_OUTEDGESET_FUNC(), DGL_SPAN_MINIMUM_SPANNING_FUNC(), dglDepthComponents(), dglEdgeGet_Attr(), dglEdgeGet_Cost(), dglEdgeGet_Head(), dglEdgeGet_Id(), dglEdgeGet_Tail(), dglEdgeSet_Attr(), dglEdgesetGet_EdgeCount(), dglNodeGet_Attr(), dglNodeGet_Id(), dglNodeGet_InDegree(), dglNodeGet_OutDegree(), dglNodeGet_Status(), dglNodeGet_Valence(), and dglStrerror().

#define DGL_ERR_UnknownByteOrder   9

Definition at line 282 of file graph.h.

Referenced by dglStrerror().

#define DGL_ERR_VersionNotSupported   18

Definition at line 291 of file graph.h.

Referenced by dglInitialize(), dglRead(), and dglStrerror().

#define DGL_ERR_Write   6

Definition at line 279 of file graph.h.

Referenced by dgl_write_V1(), dgl_write_V2(), and dglStrerror().

#define DGL_ES_DIRECTED   0x1

Definition at line 70 of file graph.h.

Referenced by DGL_ADD_EDGE_FUNC(), DGL_SPAN_DEPTHFIRST_SPANNING_FUNC(), and DGL_SPAN_MINIMUM_SPANNING_FUNC().

#define DGL_GF_BIPARTITE   0x2

Definition at line 44 of file graph.h.

#define DGL_GF_BOUQUET   0x8

Definition at line 46 of file graph.h.

#define DGL_GF_COMPLETE   0x1

Definition at line 43 of file graph.h.

#define DGL_GF_CYCLE   0x40

Definition at line 49 of file graph.h.

#define DGL_GF_DIPOLE   0x10

Definition at line 47 of file graph.h.

#define DGL_GF_PATH   0x20

Definition at line 48 of file graph.h.

#define DGL_GF_REGULAR   0x4

Definition at line 45 of file graph.h.

#define DGL_GO_EdgePrioritize_ATTR   0x20

Definition at line 55 of file graph.h.

#define DGL_GO_EdgePrioritize_COST   0x10

Definition at line 54 of file graph.h.

Referenced by DGL_ADD_EDGE_FUNC(), DGL_DEL_EDGE_FUNC(), DGL_DEL_NODE_FUNC(), and main().

#define DGL_GO_NodePrioritize_ATTR   0x40

Definition at line 56 of file graph.h.

#define DGL_GS_FLAT   0x1

Definition at line 38 of file graph.h.

Referenced by DGL_ADD_EDGE_FUNC(), DGL_ADD_NODE_FUNC(), DGL_DEL_EDGE_FUNC(), DGL_DEL_NODE_FUNC(), dgl_depthfirst_spanning_V1(), dgl_depthfirst_spanning_V2(), dgl_dijkstra_V1(), dgl_dijkstra_V2(), DGL_EDGE_T_INITIALIZE_FUNC(), DGL_EDGESET_T_FIRST_FUNC(), DGL_EDGESET_T_NEXT_FUNC(), DGL_FLATTEN_FUNC(), DGL_GET_EDGE_FUNC(), DGL_GET_NODE_FUNC(), DGL_GET_NODE_INEDGESET_FUNC(), DGL_GET_NODE_OUTEDGESET_FUNC(), dgl_minimum_spanning_V1(), dgl_minimum_spanning_V2(), DGL_NODE_T_INITIALIZE_FUNC(), dglEdgeGet_Head(), dglEdgeGet_Tail(), and dglReadChunk().

#define DGL_MERGE_EDGE   0x4

Definition at line 86 of file graph.h.

#define DGL_NS_ALONE   0x4

Definition at line 64 of file graph.h.

Referenced by DGL_ADD_EDGE_FUNC(), DGL_ADD_NODE_FUNC(), DGL_DEL_NODE_FUNC(), DGL_DEL_NODE_INEDGE_FUNC(), DGL_DEL_NODE_OUTEDGE_FUNC(), DGL_FLATTEN_FUNC(), DGL_GET_NODE_INEDGESET_FUNC(), DGL_GET_NODE_OUTEDGESET_FUNC(), DGL_SPAN_DEPTHFIRST_SPANNING_FUNC(), DGL_SPAN_MINIMUM_SPANNING_FUNC(), dglNodeGet_InDegree(), dglNodeGet_OutDegree(), and dglNodeGet_Valence().

#define DGL_NS_HEAD   0x1

Definition at line 62 of file graph.h.

Referenced by DGL_ADD_EDGE_FUNC(), DGL_DEL_NODE_FUNC(), DGL_DEL_NODE_INEDGE_FUNC(), DGL_DEL_NODE_OUTEDGE_FUNC(), DGL_SPAN_DEPTHFIRST_SPANNING_FUNC(), DGL_SPAN_MINIMUM_SPANNING_FUNC(), and dglDepthComponents().

#define DGL_NS_TAIL   0x2

Definition at line 63 of file graph.h.

Referenced by DGL_ADD_EDGE_FUNC(), DGL_DEL_NODE_FUNC(), DGL_DEL_NODE_INEDGE_FUNC(), DGL_DEL_NODE_OUTEDGE_FUNC(), and DGL_SPAN_DEPTHFIRST_SPANNING_FUNC().

#define DGL_STRONGCONNECT   0x1

Definition at line 84 of file graph.h.

Referenced by DGL_ADD_EDGE_FUNC().


Typedef Documentation

typedef struct _dglGraph dglGraph_s

typedef int(* dglSpanClip_fn)(dglGraph_s *, dglGraph_s *, dglSpanClipInput_s *, dglSpanClipOutput_s *, void *)

Definition at line 203 of file graph.h.

typedef struct _dglSpanClipInput dglSpanClipInput_s

typedef struct _dglSpanClipOutput dglSpanClipOutput_s

typedef struct _dglSPArc dglSPArc_s

typedef int(* dglSPClip_fn)(dglGraph_s *, dglSPClipInput_s *, dglSPClipOutput_s *, void *)

Definition at line 198 of file graph.h.

typedef struct _dglSPClipInput dglSPClipInput_s

typedef struct _dglSPClipOutput dglSPClipOutput_s

typedef struct _dglSPReport dglSPReport_s

typedef int(* dglWriteChunk_fn)(dglGraph_s *, unsigned char *pbChunk, int cbChunk, void *pvArg)

Definition at line 398 of file graph.h.


Function Documentation

int dglAddEdge ( dglGraph_s pGraph,
dglInt32_t  nHead,
dglInt32_t  nTail,
dglInt32_t  nCost,
dglInt32_t  nEdge 
)

Definition at line 550 of file dglib/graph.c.

References dgl_add_edge_V1(), dgl_add_edge_V2(), DGL_ERR_BadVersion, _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main(), Vect_graph_add_edge(), and Vect_net_build_graph().

int dglAddEdgeX ( dglGraph_s pGraph,
dglInt32_t  nHead,
dglInt32_t  nTail,
dglInt32_t  nCost,
dglInt32_t  nEdge,
void *  pvFnodeAttr,
void *  pvTnodeAttr,
void *  pvEdgeAttr,
dglInt32_t  nFlags 
)

Definition at line 585 of file dglib/graph.c.

References dgl_add_edge_V1(), dgl_add_edge_V2(), DGL_ERR_BadVersion, _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main().

int dglAddNode ( dglGraph_s pGraph,
dglInt32_t  nNodeId,
void *  pvNodeAttr,
dglInt32_t  nFlags 
)

Definition at line 624 of file dglib/graph.c.

References dgl_add_node_V1(), dgl_add_node_V2(), DGL_ERR_BadVersion, _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main().

int dglDelEdge ( dglGraph_s pGraph,
dglInt32_t  nEdgeId 
)

Definition at line 530 of file dglib/graph.c.

References dgl_del_edge_V1(), dgl_del_edge_V2(), DGL_ERR_BadVersion, _dglGraph::iErrno, and _dglGraph::Version.

int dglDelNode ( dglGraph_s pGraph,
dglInt32_t  nNodeId 
)

Definition at line 650 of file dglib/graph.c.

References dgl_del_node_V1(), dgl_del_node_V2(), DGL_ERR_BadVersion, _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main().

int dglDepthComponents ( dglGraph_s pgraphInput,
dglGraph_s pgraphComponents,
int  cgraphComponents,
dglSpanClip_fn  fnClip,
void *  pvClipArg 
)

Definition at line 849 of file dglib/graph.c.

References avl_create, avl_destroy, avl_find, dgl_depthfirst_spanning_V1(), dgl_depthfirst_spanning_V2(), DGL_ERR_BadVersion, DGL_ERR_MemoryExhausted, DGL_ERR_UnexpectedNullPointer, DGL_NODE_ID_v1, DGL_NODE_ID_v2, DGL_NODE_STATUS_v1, DGL_NODE_STATUS_v2, DGL_NS_HEAD, dglGet_EdgeAttrSize(), dglGet_EdgeCount(), dglGet_NodeAttrSize(), dglGet_Opaque(), dglGet_Version(), dglInitialize(), dglNode_T_First(), dglNode_T_Initialize(), dglNode_T_Next(), dglNode_T_Release(), dglTreeGetAllocator(), dglTreeNodeCancel(), dglTreeNodeCompare(), _dglGraph::iErrno, _dglTreeNode::nKey, and _dglGraph::Version.

Referenced by main().

int dglDepthSpanning ( dglGraph_s pgraphInput,
dglGraph_s pgraphOutput,
dglInt32_t  nVertexNode,
dglSpanClip_fn  fnClip,
void *  pvClipArg 
)

Definition at line 788 of file dglib/graph.c.

References avl_create, avl_destroy, dgl_depthfirst_spanning_V1(), dgl_depthfirst_spanning_V2(), DGL_ERR_BadVersion, DGL_ERR_MemoryExhausted, dglGet_EdgeAttrSize(), dglGet_EdgeCount(), dglGet_NodeAttrSize(), dglGet_Opaque(), dglGet_Version(), dglInitialize(), dglRelease(), dglTreeGetAllocator(), dglTreeNodeCancel(), dglTreeNodeCompare(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main().

dglInt32_t* dglEdge_T_First ( dglEdgeTraverser_s pTraverser  ) 

Definition at line 1335 of file dglib/graph.c.

Referenced by main().

int dglEdge_T_Initialize ( dglEdgeTraverser_s pTraverser,
dglGraph_s pGraph,
dglEdgePrioritizer_s pEdgePrioritizer 
)

Definition at line 1302 of file dglib/graph.c.

References dgl_edge_t_initialize_V1(), dgl_edge_t_initialize_V2(), DGL_ERR_BadVersion, _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main().

dglInt32_t* dglEdge_T_Next ( dglEdgeTraverser_s pTraverser  ) 

Definition at line 1349 of file dglib/graph.c.

Referenced by main().

void dglEdge_T_Release ( dglEdgeTraverser_s pTraverser  ) 

Definition at line 1320 of file dglib/graph.c.

Referenced by main().

dglInt32_t* dglEdgeGet_Attr ( dglGraph_s pGraph,
dglInt32_t pnEdge 
)

Definition at line 471 of file dglib/graph.c.

References DGL_EDGE_ATTR_PTR_v1, DGL_EDGE_ATTR_PTR_v2, DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, _dglGraph::iErrno, and _dglGraph::Version.

dglInt32_t dglEdgeGet_Cost ( dglGraph_s pGraph,
dglInt32_t pnEdge 
)

Definition at line 375 of file dglib/graph.c.

References DGL_EDGE_COST_v1, DGL_EDGE_COST_v2, DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main(), Vect_graph_shortest_path(), and Vect_net_shortest_path().

dglInt32_t* dglEdgeGet_Head ( dglGraph_s pGraph,
dglInt32_t pnEdge 
)

Definition at line 411 of file dglib/graph.c.

References DGL_EDGE_HEADNODE_OFFSET_v1, DGL_EDGE_HEADNODE_OFFSET_v2, DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, dgl_get_node_V1(), dgl_get_node_V2(), DGL_GS_FLAT, DGL_NODEBUFFER_SHIFT_v1, DGL_NODEBUFFER_SHIFT_v2, _dglGraph::Flags, _dglGraph::iErrno, and _dglGraph::Version.

dglInt32_t dglEdgeGet_Id ( dglGraph_s pGraph,
dglInt32_t pnEdge 
)

Definition at line 393 of file dglib/graph.c.

References DGL_EDGE_ID_v1, DGL_EDGE_ID_v2, DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main(), Vect_graph_shortest_path(), and Vect_net_shortest_path().

dglInt32_t* dglEdgeGet_Tail ( dglGraph_s pGraph,
dglInt32_t pnEdge 
)

Definition at line 441 of file dglib/graph.c.

References DGL_EDGE_TAILNODE_OFFSET_v1, DGL_EDGE_TAILNODE_OFFSET_v2, DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, dgl_get_node_V1(), dgl_get_node_V2(), DGL_GS_FLAT, DGL_NODEBUFFER_SHIFT_v1, DGL_NODEBUFFER_SHIFT_v2, _dglGraph::Flags, _dglGraph::iErrno, and _dglGraph::Version.

int dglEdgeSet_Attr ( dglGraph_s pGraph,
dglInt32_t pnAttr,
dglInt32_t pnEdge 
)

Definition at line 489 of file dglib/graph.c.

References DGL_EDGE_ATTR_PTR_v1, DGL_EDGE_ATTR_PTR_v2, DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, _dglGraph::EdgeAttrSize, _dglGraph::iErrno, and _dglGraph::Version.

dglInt32_t* dglEdgeset_T_First ( dglEdgesetTraverser_s pTraverser  ) 

Definition at line 1386 of file dglib/graph.c.

References dgl_edgeset_t_first_V1(), dgl_edgeset_t_first_V2(), DGL_ERR_BadVersion, _dglGraph::iErrno, dglEdgesetTraverser_s::pGraph, and _dglGraph::Version.

int dglEdgeset_T_Initialize ( dglEdgesetTraverser_s pTraverser,
dglGraph_s pGraph,
dglInt32_t pnEdgeset 
)

Definition at line 1365 of file dglib/graph.c.

References dgl_edgeset_t_initialize_V1(), dgl_edgeset_t_initialize_V2(), DGL_ERR_BadVersion, _dglGraph::iErrno, and _dglGraph::Version.

dglInt32_t* dglEdgeset_T_Next ( dglEdgesetTraverser_s pTraverser  ) 

Definition at line 1399 of file dglib/graph.c.

References dgl_edgeset_t_next_V1(), dgl_edgeset_t_next_V2(), DGL_ERR_BadVersion, _dglGraph::iErrno, dglEdgesetTraverser_s::pGraph, and _dglGraph::Version.

void dglEdgeset_T_Release ( dglEdgesetTraverser_s pTraverser  ) 

Definition at line 1382 of file dglib/graph.c.

dglInt32_t dglEdgesetGet_EdgeCount ( dglGraph_s pGraph,
dglInt32_t pnOutEdgeset 
)

Definition at line 355 of file dglib/graph.c.

References DGL_EDGESET_EDGECOUNT_v1, DGL_EDGESET_EDGECOUNT_v2, DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, _dglGraph::iErrno, and _dglGraph::Version.

int dglErrno ( dglGraph_s pgraph  ) 

Definition at line 1070 of file dglib/graph.c.

References _dglGraph::iErrno.

Referenced by main().

int dglFlatten ( dglGraph_s pGraph  ) 

Definition at line 126 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_flatten_V1(), dgl_flatten_V2(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main(), Vect_graph_build(), and Vect_net_build_graph().

void dglFreeSPReport ( dglGraph_s pGraph,
dglSPReport_s pSPReport 
)

Definition at line 1023 of file dglib/graph.c.

References _dglSPReport::cArc, _dglSPReport::pArc, and _dglSPArc::pnEdge.

Referenced by main(), Vect_graph_shortest_path(), and Vect_net_shortest_path().

int dglGet_AloneNodeCount ( dglGraph_s pGraph  ) 

Definition at line 1157 of file dglib/graph.c.

dglInt64_t dglGet_Cost ( dglGraph_s pGraph  ) 

Definition at line 1198 of file dglib/graph.c.

int dglGet_EdgeAttrSize ( dglGraph_s pGraph  ) 

Definition at line 1145 of file dglib/graph.c.

Referenced by dglDepthComponents(), dglDepthSpanning(), and dglMinimumSpanning().

int dglGet_EdgeCount ( dglGraph_s pGraph  ) 

Definition at line 1160 of file dglib/graph.c.

Referenced by dglDepthComponents(), dglDepthSpanning(), dglMinimumSpanning(), and main().

dglEdgePrioritizer_s* dglGet_EdgePrioritizer ( dglGraph_s pGraph  ) 

Definition at line 1216 of file dglib/graph.c.

Referenced by main().

int dglGet_EdgeSize ( dglGraph_s pGraph  ) 

Definition at line 1185 of file dglib/graph.c.

int dglGet_Endianess ( dglGraph_s pGraph  ) 

Definition at line 1139 of file dglib/graph.c.

dglInt32_t dglGet_Family ( dglGraph_s pGraph  ) 

Definition at line 1204 of file dglib/graph.c.

int dglGet_HeadNodeCount ( dglGraph_s pGraph  ) 

Definition at line 1151 of file dglib/graph.c.

int dglGet_NodeAttrSize ( dglGraph_s pGraph  ) 

Definition at line 1142 of file dglib/graph.c.

Referenced by dglDepthComponents(), dglDepthSpanning(), and dglMinimumSpanning().

int dglGet_NodeCount ( dglGraph_s pGraph  ) 

Definition at line 1148 of file dglib/graph.c.

dglNodePrioritizer_s* dglGet_NodePrioritizer ( dglGraph_s pGraph  ) 

Definition at line 1219 of file dglib/graph.c.

int dglGet_NodeSize ( dglGraph_s pGraph  ) 

Definition at line 1172 of file dglib/graph.c.

dglInt32_t* dglGet_Opaque ( dglGraph_s pGraph  ) 

Definition at line 1166 of file dglib/graph.c.

Referenced by dglDepthComponents(), dglDepthSpanning(), and dglMinimumSpanning().

dglInt32_t dglGet_Options ( dglGraph_s pGraph  ) 

Definition at line 1210 of file dglib/graph.c.

int dglGet_State ( dglGraph_s pGraph  ) 

Definition at line 1163 of file dglib/graph.c.

int dglGet_TailNodeCount ( dglGraph_s pGraph  ) 

Definition at line 1154 of file dglib/graph.c.

int dglGet_Version ( dglGraph_s pGraph  ) 

Definition at line 1133 of file dglib/graph.c.

References _dglGraph::Version.

Referenced by dglDepthComponents(), dglDepthSpanning(), and dglMinimumSpanning().

dglInt32_t* dglGetEdge ( dglGraph_s pGraph,
dglInt32_t  nEdgeId 
)

Definition at line 510 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_get_edge_V1(), dgl_get_edge_V2(), _dglGraph::iErrno, and _dglGraph::Version.

dglInt32_t* dglGetNode ( dglGraph_s pGraph,
dglInt32_t  nNodeId 
)

Definition at line 140 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_get_node_V1(), dgl_get_node_V2(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by DGL_SPAN_DEPTHFIRST_SPANNING_FUNC(), main(), Vect_graph_set_node_costs(), and Vect_net_build_graph().

int dglInitialize ( dglGraph_s pGraph,
dglByte_t  Version,
dglInt32_t  NodeAttrSize,
dglInt32_t  EdgeAttrSize,
dglInt32_t pOpaqueSet 
)

Definition at line 53 of file dglib/graph.c.

References _dglGraph::aOpaqueSet, DGL_ENDIAN_BIG, DGL_ENDIAN_LITTLE, DGL_ERR_BadArgument, DGL_ERR_VersionNotSupported, dgl_initialize_V1(), dgl_initialize_V2(), _dglGraph::EdgeAttrSize, _dglGraph::Endian, _dglGraph::iErrno, _dglGraph::NodeAttrSize, and _dglGraph::Version.

Referenced by dgl_read_V1(), dgl_read_V2(), dglDepthComponents(), dglDepthSpanning(), dglMinimumSpanning(), main(), Vect_graph_init(), and Vect_net_build_graph().

int dglInitializeSPCache ( dglGraph_s pgraph,
dglSPCache_s pCache 
)

Definition at line 1039 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_sp_cache_initialize_V1(), dgl_sp_cache_initialize_V2(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main().

int dglIOContextInitialize ( dglGraph_s ,
dglIOContext_s  
)

Definition at line 1426 of file dglib/graph.c.

References __CIO_BEGIN, dglIOContext_s::cb, dglIOContext_s::ib, dglIOContext_s::nState, dglIOContext_s::pb, and dglIOContext_s::pG.

void dglIOContextRelease ( dglIOContext_s  ) 

Definition at line 1435 of file dglib/graph.c.

int dglMinimumSpanning ( dglGraph_s pgraphInput,
dglGraph_s pgraphOutput,
dglInt32_t  nVertexNode,
dglSpanClip_fn  fnClip,
void *  pvClipArg 
)

Definition at line 979 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_minimum_spanning_V1(), dgl_minimum_spanning_V2(), dglGet_EdgeAttrSize(), dglGet_EdgeCount(), dglGet_NodeAttrSize(), dglGet_Opaque(), dglGet_Version(), dglInitialize(), dglRelease(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main().

dglInt32_t* dglNode_T_Find ( dglNodeTraverser_s pTraverser,
dglInt32_t  nNodeId 
)

Definition at line 1285 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_node_t_find_V1(), dgl_node_t_find_V2(), _dglGraph::iErrno, dglNodeTraverser_s::pGraph, and _dglGraph::Version.

dglInt32_t* dglNode_T_First ( dglNodeTraverser_s pTraverser  ) 

Definition at line 1257 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_node_t_first_V1(), dgl_node_t_first_V2(), _dglGraph::iErrno, dglNodeTraverser_s::pGraph, and _dglGraph::Version.

Referenced by dglDepthComponents(), and main().

int dglNode_T_Initialize ( dglNodeTraverser_s pTraverser,
dglGraph_s pGraph 
)

Definition at line 1228 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_node_t_initialize_V1(), dgl_node_t_initialize_V2(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by dglDepthComponents(), and main().

dglInt32_t* dglNode_T_Last ( dglNodeTraverser_s pTraverser  ) 

dglInt32_t* dglNode_T_Next ( dglNodeTraverser_s pTraverser  ) 

Definition at line 1271 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_node_t_next_V1(), dgl_node_t_next_V2(), _dglGraph::iErrno, dglNodeTraverser_s::pGraph, and _dglGraph::Version.

Referenced by dglDepthComponents(), and main().

dglInt32_t* dglNode_T_Prev ( dglNodeTraverser_s pTraverser  ) 

void dglNode_T_Release ( dglNodeTraverser_s pTraverser  ) 

Definition at line 1242 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_node_t_release_V1(), dgl_node_t_release_V2(), _dglGraph::iErrno, dglNodeTraverser_s::pGraph, and _dglGraph::Version.

Referenced by dglDepthComponents(), and main().

dglInt32_t* dglNodeGet_Attr ( dglGraph_s pGraph,
dglInt32_t pnNode 
)

Definition at line 229 of file dglib/graph.c.

References DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, DGL_NODE_ATTR_PTR_v1, DGL_NODE_ATTR_PTR_v2, _dglGraph::iErrno, and _dglGraph::Version.

dglInt32_t dglNodeGet_Id ( dglGraph_s pGraph,
dglInt32_t pnNode 
)

Definition at line 191 of file dglib/graph.c.

References DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, DGL_NODE_ID_v1, DGL_NODE_ID_v2, _dglGraph::iErrno, and _dglGraph::Version.

int dglNodeGet_InDegree ( dglGraph_s pGraph,
dglInt32_t pnNode 
)

Definition at line 264 of file dglib/graph.c.

References DGL_EDGESET_EDGECOUNT_v2, DGL_ERR_BadVersion, DGL_ERR_NotSupported, DGL_ERR_UnexpectedNullPointer, DGL_NODE_STATUS_v2, DGL_NS_ALONE, dglNodeGet_InEdgeset(), dglNodeGet_Valence(), _dglGraph::iErrno, and _dglGraph::Version.

dglInt32_t* dglNodeGet_InEdgeset ( dglGraph_s pGraph,
dglInt32_t pnNode 
)

Definition at line 169 of file dglib/graph.c.

References DGL_ERR_BadVersion, DGL_ERR_NotSupported, dgl_getnode_inedgeset_V2(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by dglNodeGet_InDegree(), and dglNodeGet_Valence().

int dglNodeGet_OutDegree ( dglGraph_s pGraph,
dglInt32_t pnNode 
)

Definition at line 294 of file dglib/graph.c.

References DGL_EDGESET_EDGECOUNT_v1, DGL_EDGESET_EDGECOUNT_v2, DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, DGL_NODE_STATUS_v1, DGL_NODE_STATUS_v2, DGL_NS_ALONE, dglNodeGet_OutEdgeset(), dglNodeGet_Valence(), _dglGraph::iErrno, and _dglGraph::Version.

dglInt32_t* dglNodeGet_OutEdgeset ( dglGraph_s pGraph,
dglInt32_t pnNode 
)

Definition at line 153 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_getnode_outedgeset_V1(), dgl_getnode_outedgeset_V2(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by dglNodeGet_OutDegree(), and dglNodeGet_Valence().

dglInt32_t dglNodeGet_Status ( dglGraph_s pGraph,
dglInt32_t pnNode 
)

Definition at line 210 of file dglib/graph.c.

References DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, DGL_NODE_STATUS_v1, DGL_NODE_STATUS_v2, _dglGraph::iErrno, and _dglGraph::Version.

int dglNodeGet_Valence ( dglGraph_s pGraph,
dglInt32_t pnNode 
)

Definition at line 324 of file dglib/graph.c.

References DGL_EDGESET_EDGECOUNT_v2, DGL_ERR_BadVersion, DGL_ERR_UnexpectedNullPointer, DGL_NODE_STATUS_v2, DGL_NS_ALONE, dglNodeGet_InEdgeset(), dglNodeGet_OutEdgeset(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by dglNodeGet_InDegree(), and dglNodeGet_OutDegree().

void dglNodeSet_Attr ( dglGraph_s pGraph,
dglInt32_t pnNode,
dglInt32_t pnAttr 
)

Definition at line 247 of file dglib/graph.c.

References DGL_NODE_ATTR_PTR_v1, DGL_NODE_ATTR_PTR_v2, _dglGraph::NodeAttrSize, and _dglGraph::Version.

Referenced by main(), Vect_graph_set_node_costs(), and Vect_net_build_graph().

int dglRead ( dglGraph_s pGraph,
int  fd 
)

Definition at line 696 of file dglib/graph.c.

References DGL_ERR_Read, DGL_ERR_VersionNotSupported, dgl_read_V1(), dgl_read_V2(), and _dglGraph::iErrno.

Referenced by main().

int dglReadChunk ( dglIOContext_s ,
dglByte_t pbChunk,
int  cbChunk 
)

Definition at line 1540 of file dglib/graph.c.

References __CIO_BEGIN, __CIO_END, __CIO_R_EDGEBUFFER, __CIO_R_HEADER, __CIO_R_NODEBUFFER, dglIOContext_s::ab, _dglGraph::aOpaqueSet, _dglGraph::cAlone, dglIOContext_s::cb, _dglGraph::cEdge, _dglGraph::cHead, _dglGraph::cNode, _dglGraph::cTail, DGL_ENDIAN_BIG, DGL_ENDIAN_LITTLE, DGL_GS_FLAT, dgl_swapInt32Bytes(), dgl_swapInt64Bytes(), _dglGraph::EdgeAttrSize, _dglGraph::Endian, _dglGraph::Flags, dglIOContext_s::fSwap, dglIOContext_s::ib, _dglGraph::iEdgeBuffer, _dglGraph::iNodeBuffer, MIN, _dglGraph::nFamily, _dglGraph::nnCost, _dglGraph::NodeAttrSize, _dglGraph::nOptions, dglIOContext_s::nState, dglIOContext_s::pb, _dglGraph::pEdgeBuffer, dglIOContext_s::pG, _dglGraph::pNodeBuffer, and _dglGraph::Version.

int dglRelease ( dglGraph_s pGraph  ) 

Definition at line 99 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_release_V1(), dgl_release_V2(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by dglDepthSpanning(), dglMinimumSpanning(), and main().

void dglReleaseSPCache ( dglGraph_s pgraph,
dglSPCache_s pCache 
)

Definition at line 1053 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_sp_cache_release_V1(), dgl_sp_cache_release_V2(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main().

void dglResetStats ( dglGraph_s pgraph  ) 

Definition at line 43 of file dglib/graph.c.

void dglSet_Cost ( dglGraph_s pGraph,
dglInt64_t  nnCost 
)

Definition at line 1201 of file dglib/graph.c.

void dglSet_Family ( dglGraph_s pGraph,
dglInt32_t  nFamily 
)

Definition at line 1207 of file dglib/graph.c.

void dglSet_Opaque ( dglGraph_s pGraph,
dglInt32_t pOpaque 
)

Definition at line 1169 of file dglib/graph.c.

void dglSet_Options ( dglGraph_s pGraph,
dglInt32_t  nOptions 
)

Definition at line 1213 of file dglib/graph.c.

Referenced by main().

void dglSet_Version ( dglGraph_s pGraph,
int  Version 
)

Definition at line 1136 of file dglib/graph.c.

Referenced by main().

int dglShortestDistance ( dglGraph_s pGraph,
dglInt32_t pnDistance,
dglInt32_t  nStartNode,
dglInt32_t  nDestinationNode,
dglSPClip_fn  fnClip,
void *  pvClipArg,
dglSPCache_s pCache 
)

Definition at line 757 of file dglib/graph.c.

References dgl_dijkstra_V1(), dgl_dijkstra_V2(), DGL_ERR_BadVersion, _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main(), Vect_graph_shortest_path(), and Vect_net_shortest_path().

int dglShortestDistanceGraph ( dglGraph_s pGraph,
dglGraph_s pGraphOut,
dglInt32_t  nStartNode,
dglInt32_t  nDestinationNode,
dglSPClip_fn  fnClip,
void *  pvClipArg,
dglSPCache_s pCache 
)

int dglShortestPath ( dglGraph_s pGraph,
dglSPReport_s **  ppReport,
dglInt32_t  nStartNode,
dglInt32_t  nDestinationNode,
dglSPClip_fn  fnClip,
void *  pvClipArg,
dglSPCache_s pCache 
)

Definition at line 726 of file dglib/graph.c.

References dgl_dijkstra_V1(), dgl_dijkstra_V2(), DGL_ERR_BadVersion, _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main(), Vect_graph_shortest_path(), and Vect_net_shortest_path().

int dglShortestPathGraph ( dglGraph_s pGraph,
dglGraph_s pGraphOut,
dglInt32_t  nStartNode,
dglInt32_t  nDestinationNode,
dglSPClip_fn  fnClip,
void *  pvClipArg,
dglSPCache_s pCache 
)

char* dglStrerror ( dglGraph_s pgraph  ) 

Definition at line 1075 of file dglib/graph.c.

References DGL_ERR_BadArgument, DGL_ERR_BadEdge, DGL_ERR_BadNodeType, DGL_ERR_BadOnFlatGraph, DGL_ERR_BadOnTreeGraph, DGL_ERR_BadVersion, DGL_ERR_EdgeAlreadyExist, DGL_ERR_EdgeNotFound, DGL_ERR_HeadNodeNotFound, DGL_ERR_HeapError, DGL_ERR_MemoryExhausted, DGL_ERR_NodeAlreadyExist, DGL_ERR_NodeIsAComponent, DGL_ERR_NodeNotFound, DGL_ERR_NotSupported, DGL_ERR_Read, DGL_ERR_TailNodeNotFound, DGL_ERR_TreeSearchError, DGL_ERR_UndefinedMethod, DGL_ERR_UnexpectedNullPointer, DGL_ERR_UnknownByteOrder, DGL_ERR_VersionNotSupported, DGL_ERR_Write, and _dglGraph::iErrno.

Referenced by main(), Vect_graph_shortest_path(), and Vect_net_shortest_path().

int dglUnflatten ( dglGraph_s pGraph  ) 

Definition at line 112 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_unflatten_V1(), dgl_unflatten_V2(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main().

int dglWrite ( dglGraph_s pGraph,
int  fd 
)

Definition at line 674 of file dglib/graph.c.

References DGL_ERR_BadVersion, dgl_write_V1(), dgl_write_V2(), _dglGraph::iErrno, and _dglGraph::Version.

Referenced by main().

int dglWriteChunk ( dglIOContext_s ,
dglWriteChunk_fn  ,
void *  pvArg 
)

Definition at line 1438 of file dglib/graph.c.

References __CIO_BEGIN, __CIO_END, __CIO_W_EDGEBUFFER, __CIO_W_HEADER, __CIO_W_NODEBUFFER, dglIOContext_s::ab, _dglGraph::aOpaqueSet, _dglGraph::cAlone, dglIOContext_s::cb, _dglGraph::cEdge, _dglGraph::cHead, _dglGraph::cNode, _dglGraph::cTail, _dglGraph::EdgeAttrSize, _dglGraph::Endian, dglIOContext_s::ib, _dglGraph::iEdgeBuffer, _dglGraph::iNodeBuffer, _dglGraph::nFamily, _dglGraph::nnCost, _dglGraph::NodeAttrSize, _dglGraph::nOptions, dglIOContext_s::nState, dglIOContext_s::pb, _dglGraph::pEdgeBuffer, dglIOContext_s::pG, _dglGraph::pNodeBuffer, and _dglGraph::Version.


Generated on Wed Dec 19 14:59:46 2007 for GRASS by  doxygen 1.5.4