36 #define DGL_GS_FLAT 0x1
41 #define DGL_GF_COMPLETE 0x1
42 #define DGL_GF_BIPARTITE 0x2
43 #define DGL_GF_REGULAR 0x4
44 #define DGL_GF_BOUQUET 0x8
45 #define DGL_GF_DIPOLE 0x10
46 #define DGL_GF_PATH 0x20
47 #define DGL_GF_CYCLE 0x40
52 #define DGL_GO_EdgePrioritize_COST 0x10
53 #define DGL_GO_EdgePrioritize_ATTR 0x20
54 #define DGL_GO_NodePrioritize_ATTR 0x40
60 #define DGL_NS_HEAD 0x1
61 #define DGL_NS_TAIL 0x2
62 #define DGL_NS_ALONE 0x4
68 #define DGL_ES_DIRECTED 0x1
74 #define DGL_ENDIAN_BIG 1
75 #define DGL_ENDIAN_LITTLE 2
82 #define DGL_STRONGCONNECT 0x1
84 #define DGL_MERGE_EDGE 0x4
281 #define DGL_ERR_BadVersion 1
282 #define DGL_ERR_BadNodeType 2
283 #define DGL_ERR_MemoryExhausted 3
284 #define DGL_ERR_HeapError 4
285 #define DGL_ERR_UndefinedMethod 5
286 #define DGL_ERR_Write 6
287 #define DGL_ERR_Read 7
288 #define DGL_ERR_NotSupported 8
289 #define DGL_ERR_UnknownByteOrder 9
290 #define DGL_ERR_HeadNodeNotFound 10
291 #define DGL_ERR_TailNodeNotFound 11
292 #define DGL_ERR_BadEdge 12
293 #define DGL_ERR_BadOnFlatGraph 13
294 #define DGL_ERR_BadOnTreeGraph 14
295 #define DGL_ERR_NodeNotFound 15
296 #define DGL_ERR_TreeSearchError 16
297 #define DGL_ERR_UnexpectedNullPointer 17
298 #define DGL_ERR_VersionNotSupported 18
299 #define DGL_ERR_EdgeNotFound 19
300 #define DGL_ERR_NodeAlreadyExist 20
301 #define DGL_ERR_NodeIsAComponent 21
302 #define DGL_ERR_EdgeAlreadyExist 22
303 #define DGL_ERR_BadArgument 23
364 void *pvTnodeAttr,
void *pvEdgeAttr,
dglInt32_t nFlags);
381 unsigned char ab[118];
391 int cbChunk,
void *pvArg);
437 int cgraphComponents,
int dglGet_State(dglGraph_s *pgraph)
dglInt32_t * dglEdgeGet_Tail(dglGraph_s *pGraph, dglInt32_t *pnEdge)
dglInt32_t dglNodeGet_Id(dglGraph_s *pGraph, dglInt32_t *pnNode)
dglInt32_t * dglNode_T_Prev(dglNodeTraverser_s *pTraverser)
int dglNodeGet_Valence(dglGraph_s *pGraph, dglInt32_t *pnNode)
struct _dglSpanClipInput dglSpanClipInput_s
int dglShortestPath(dglGraph_s *pGraph, dglSPReport_s **ppReport, dglInt32_t nStart, dglInt32_t nDestination, dglSPClip_fn fnClip, void *pvClipArg, dglSPCache_s *pCache)
dglEdgePrioritizer_s edgePrioritizer
int dglAddEdge(dglGraph_s *pGraph, dglInt32_t nHead, dglInt32_t nTail, dglInt32_t nCost, dglInt32_t nEdge)
int dglEdgeset_T_Initialize(dglEdgesetTraverser_s *pT, dglGraph_s *pGraph, dglInt32_t *pnEdgeset)
struct _dglSpanClipOutput dglSpanClipOutput_s
int dglGet_HeadNodeCount(dglGraph_s *pgraph)
dglNodePrioritizer_s nodePrioritizer
int dglGet_TailNodeCount(dglGraph_s *pgraph)
dglInt64_t dglGet_Cost(dglGraph_s *pgraph)
int dglGet_EdgeAttrSize(dglGraph_s *pgraph)
int dglAddNode(dglGraph_s *pGraph, dglInt32_t nNodeId, void *pvNodeAttr, dglInt32_t nFlags)
dglTreeEdgePri32_s * pEdgePri32Item
int dglRead(dglGraph_s *pGraph, int fd)
dglInt32_t dglNodeGet_Status(dglGraph_s *pGraph, dglInt32_t *pnNode)
int dglErrno(dglGraph_s *pgraph)
dglInt32_t * dglEdge_T_First(dglEdgeTraverser_s *pT)
int dglNode_T_Initialize(dglNodeTraverser_s *pT, dglGraph_s *pGraph)
struct _dglGraph dglGraph_s
int dglGet_AloneNodeCount(dglGraph_s *pgraph)
int dglShortestDistance(dglGraph_s *pGraph, dglInt32_t *pnDistance, dglInt32_t nStart, dglInt32_t nDestination, dglSPClip_fn fnClip, void *pvClipArg, dglSPCache_s *pCache)
int dglGet_Version(dglGraph_s *pgraph)
int dglNodeGet_OutDegree(dglGraph_s *pGraph, dglInt32_t *pnNode)
dglInt32_t dglEdgesetGet_EdgeCount(dglGraph_s *pGraph, dglInt32_t *pnEdgeset)
int dglEdgeSet_Attr(dglGraph_s *pGraph, dglInt32_t *pnAttr, dglInt32_t *pnEdge)
void dglNode_T_Release(dglNodeTraverser_s *pT)
void dglSet_Family(dglGraph_s *pgraph, dglInt32_t nFamily)
int dglIOContextInitialize(dglGraph_s *pG, dglIOContext_s *pIO)
int dglUnflatten(dglGraph_s *pGraph)
int(* dglWriteChunk_fn)(dglGraph_s *, unsigned char *pbChunk, int cbChunk, void *pvArg)
int dglGet_NodeAttrSize(dglGraph_s *pgraph)
struct _dglSPArc dglSPArc_s
dglInt32_t dglEdgeGet_Id(dglGraph_s *pGraph, dglInt32_t *pnEdge)
int dglInitializeSPCache(dglGraph_s *pGraph, dglSPCache_s *pCache)
int dglRelease(dglGraph_s *pGraph)
dglInt32_t dglGet_Options(dglGraph_s *pgraph)
void dglEdge_T_Release(dglEdgeTraverser_s *pT)
int dglNodeGet_InDegree(dglGraph_s *pGraph, dglInt32_t *pnNode)
void dglEdgeset_T_Release(dglEdgesetTraverser_s *pT)
dglInt32_t * dglEdgeset_T_First(dglEdgesetTraverser_s *pT)
dglInt32_t aOpaqueSet[16]
dglInt32_t * dglGetNode(dglGraph_s *pGraph, dglInt32_t nNodeId)
dglInt32_t * dglEdge_T_Next(dglEdgeTraverser_s *pT)
int dglWriteChunk(dglIOContext_s *pIO, dglWriteChunk_fn pfn, void *pv)
int dglDelEdge(dglGraph_s *pGraph, dglInt32_t nEdgeId)
int dglWrite(dglGraph_s *pGraph, int fd)
int dglDepthComponents(dglGraph_s *pgraphInput, dglGraph_s *pgraphComponents, int cgraphComponents, dglSpanClip_fn fnClip, void *pvClipArg)
void dglNodeSet_Attr(dglGraph_s *pGraph, dglInt32_t *pnNode, dglInt32_t *pnAttr)
dglInt32_t dglGet_Family(dglGraph_s *pgraph)
dglInt32_t nDestinationNode
int dglEdge_T_Initialize(dglEdgeTraverser_s *pT, dglGraph_s *pGraph, dglEdgePrioritizer_s *pEdgePrioritizer)
int dglGet_Endianess(dglGraph_s *pgraph)
void dglReleaseSPCache(dglGraph_s *pGraph, dglSPCache_s *pCache)
int dglGet_NodeSize(dglGraph_s *pgraph)
dglInt32_t * dglNode_T_First(dglNodeTraverser_s *pT)
dglInt32_t * dglEdgeGet_Head(dglGraph_s *pGraph, dglInt32_t *pnEdge)
int dglGet_EdgeCount(dglGraph_s *pgraph)
int dglShortestDistanceGraph(dglGraph_s *pGraph, dglGraph_s *pGraphOut, dglInt32_t nStartNode, dglInt32_t nDestinationNode, dglSPClip_fn fnClip, void *pvClipArg, dglSPCache_s *pCache)
dglInt32_t * dglNode_T_Find(dglNodeTraverser_s *pT, dglInt32_t nNodeId)
void dglSet_Options(dglGraph_s *pgraph, dglInt32_t nOptions)
struct _dglSPClipOutput dglSPClipOutput_s
struct _dglSPReport dglSPReport_s
dglInt32_t * dglNodeGet_OutEdgeset(dglGraph_s *pGraph, dglInt32_t *pnNode)
dglInt32_t * dglEdgeGet_Attr(dglGraph_s *pGraph, dglInt32_t *pnEdge)
dglEdgePrioritizer_s * pEdgePrioritizer
int dglDelNode(dglGraph_s *pGraph, dglInt32_t nNodeId)
dglInt32_t * dglNodeGet_Attr(dglGraph_s *pGraph, dglInt32_t *pnNode)
dglNodePrioritizer_s * dglGet_NodePrioritizer(dglGraph_s *pGraph)
dglInt32_t * dglGet_Opaque(dglGraph_s *pgraph)
dglEdgePrioritizer_s * dglGet_EdgePrioritizer(dglGraph_s *pGraph)
int dglInitialize(dglGraph_s *pGraph, dglByte_t Version, dglInt32_t NodeAttrSize, dglInt32_t EdgeAttrSize, dglInt32_t *pOpaqueSet)
dglInt32_t dglEdgeGet_Cost(dglGraph_s *pGraph, dglInt32_t *pnEdge)
int dglAddEdgeX(dglGraph_s *pGraph, dglInt32_t nHead, dglInt32_t nTail, dglInt32_t nCost, dglInt32_t nEdge, void *pvHeadAttr, void *pvTailAttr, void *pvEdgeAttr, dglInt32_t nFlags)
dglInt32_t * dglGetEdge(dglGraph_s *pGraph, dglInt32_t nEdgeId)
int dglDepthSpanning(dglGraph_s *pgraphInput, dglGraph_s *pgraphOutput, dglInt32_t nVertexNode, dglSpanClip_fn fnClip, void *pvClipArg)
int dglGet_EdgeSize(dglGraph_s *pgraph)
void dglIOContextRelease(dglIOContext_s *pIO)
void dglSet_Cost(dglGraph_s *pgraph, dglInt64_t nnCost)
dglInt32_t * dglNode_T_Last(dglNodeTraverser_s *pTraverser)
char * dglStrerror(dglGraph_s *pgraph)
void dglSet_Version(dglGraph_s *pgraph, int nVersion)
int(* dglSPClip_fn)(dglGraph_s *, dglSPClipInput_s *, dglSPClipOutput_s *, void *)
int dglMinimumSpanning(dglGraph_s *pgraphInput, dglGraph_s *pgraphOutput, dglInt32_t nVertexNode, dglSpanClip_fn fnClip, void *pvClipArg)
int dglGet_NodeCount(dglGraph_s *pgraph)
void dglFreeSPReport(dglGraph_s *pgraph, dglSPReport_s *pSPReport)
void dglSet_Opaque(dglGraph_s *pgraph, dglInt32_t *pOpaque)
void dglResetStats(dglGraph_s *pgraph)
int dglShortestPathGraph(dglGraph_s *pGraph, dglGraph_s *pGraphOut, dglInt32_t nStartNode, dglInt32_t nDestinationNode, dglSPClip_fn fnClip, void *pvClipArg, dglSPCache_s *pCache)
struct _dglSPClipInput dglSPClipInput_s
dglInt32_t * dglNode_T_Next(dglNodeTraverser_s *pT)
dglInt32_t * dglEdgeset_T_Next(dglEdgesetTraverser_s *pT)
int dglReadChunk(dglIOContext_s *pIO, dglByte_t *pbChunk, int cbChunk)
int(* dglSpanClip_fn)(dglGraph_s *, dglGraph_s *, dglSpanClipInput_s *, dglSpanClipOutput_s *, void *)
dglInt32_t * dglNodeGet_InEdgeset(dglGraph_s *pGraph, dglInt32_t *pnNode)
int dglFlatten(dglGraph_s *pGraph)