37 if (pEP && pEP->pvAVL) {
44 pT->pEdgePrioritizer = pEP;
49 pT->pEdgePrioritizer =
NULL;
57 if (pEP && pEP->pvAVL) {
60 pT->pEdgePrioritizer = pEP;
65 pT->pEdgePrioritizer =
NULL;
254 findItem.nKey = nNodeId;
275 pT->
cEdge = (pnEdgeset) ? *pnEdgeset : 0;
304 EdgeItem.
nKey = *pnOffset;
307 return pEdgeItem->
pv;
332 EdgeItem.
nKey = *pnOffset;
336 return pEdgeItem->
pv;
359 #if !defined(_DGL_V1)
385 pEdge = ptreeEdge->
pv;
417 #if !defined(_DGL_V1)
428 #if !defined(_DGL_V1)
451 (pOutEdgeset) ? pOutEdgeset : &nDummy, cOutEdgeset);
452 #if !defined(_DGL_V1)
454 (pInEdgeset) ? pInEdgeset : &nDummy, cInEdgeset);
500 for (i = 0; i < pOutEdgeset[0]; i++) {
517 pInEdgeset = pOutEdgeset + pOutEdgeset[0] + 1;
519 for (i = 0; i < pInEdgeset[0]; i++) {
int DGL_ADD_EDGE_FUNC(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 * DGL_GET_EDGE_FUNC(dglGraph_s *pgraph, dglInt32_t nEdge UNUSED)
#define UNUSED
A macro for an attribute, if attached to a variable, indicating that the variable is not used.
#define DGL_ERR_BadOnTreeGraph
#define DGL_ERR_MemoryExhausted
#define DGL_ERR_BadOnFlatGraph
#define DGL_ERR_NotSupported
#define DGL_ERR_HeadNodeNotFound
#define DGL_ERR_UnexpectedNullPointer
#define DGL_ERR_TailNodeNotFound
void DGL_EDGESET_T_RELEASE_FUNC(dglEdgesetTraverser_s *pT UNUSED)
dglInt32_t * DGL_EDGE_T_FIRST_FUNC(dglEdgeTraverser_s *pT)
void DGL_EDGE_T_RELEASE_FUNC(dglEdgeTraverser_s *pT)
dglInt32_t * DGL_EDGESET_T_FIRST_FUNC(dglEdgesetTraverser_s *pT)
int DGL_EDGESET_T_INITIALIZE_FUNC(dglGraph_s *pGraph, dglEdgesetTraverser_s *pT, dglInt32_t *pnEdgeset)
int DGL_FLATTEN_FUNC(dglGraph_s *pgraph)
dglInt32_t * DGL_EDGESET_T_NEXT_FUNC(dglEdgesetTraverser_s *pT)
int DGL_UNFLATTEN_FUNC(dglGraph_s *pgraph)
int DGL_EDGE_T_INITIALIZE_FUNC(dglGraph_s *pGraph, dglEdgeTraverser_s *pT UNUSED, dglEdgePrioritizer_s *pEP UNUSED)
dglInt32_t * DGL_NODE_T_NEXT_FUNC(dglNodeTraverser_s *pT)
dglInt32_t * DGL_EDGE_T_NEXT_FUNC(dglEdgeTraverser_s *pT)
dglInt32_t * DGL_NODE_T_FIND_FUNC(dglNodeTraverser_s *pT, dglInt32_t nNodeId)
void DGL_NODE_T_RELEASE_FUNC(dglNodeTraverser_s *pT)
int DGL_NODE_T_INITIALIZE_FUNC(dglGraph_s *pGraph, dglNodeTraverser_s *pT)
dglInt32_t * DGL_NODE_T_FIRST_FUNC(dglNodeTraverser_s *pT)
int DGL_ADD_NODE_FUNC(dglGraph_s *pgraph, dglInt32_t nId, void *pvNodeAttr UNUSED, dglInt32_t nFlags UNUSED)
dglInt32_t * DGL_GET_NODE_FUNC(dglGraph_s *pgraph, dglInt32_t nodeid)
dglTreeEdgePri32_s * pEdgePri32Item
dglEdgePrioritizer_s * pEdgePrioritizer
int dglTreeEdgeCompare(const void *pvEdgeA, const void *pvEdgeB, void *pvParam UNUSED)
void dglTreeNodeCancel(void *pvNode, void *pvParam UNUSED)
void * dglTreeGetAllocator(void)
void dglTreeEdgeCancel(void *pvEdge, void *pvParam UNUSED)
#define DGL_EDGESET_EDGE_PTR
#define DGL_T_NODEITEM_InEdgesetPTR(p)
#define DGL_NODEBUFFER_OFFSET
#define DGL_T_NODEITEM_TYPE
#define DGL_NODE_EDGESET_OFFSET
#define DGL_T_NODEITEM_OutEdgesetPTR(p)
#define DGL_T_NODEITEM_Compare
#define DGL_EDGE_TAILNODE_OFFSET
#define DGL_EDGEBUFFER_SHIFT
#define DGL_EDGESET_EDGECOUNT
#define DGL_EDGE_ATTR_PTR
#define DGL_EDGEBUFFER_OFFSET
#define DGL_EDGESET_SIZEOF
#define DGL_T_NODEITEM_NodePTR(p)
#define DGL_NODE_ATTR_PTR
#define DGL_EDGE_HEADNODE_OFFSET
#define DGL_NODEBUFFER_SHIFT