45 struct _stackItem stackItem;
46 struct _stackItem *pStackItem;
53 unsigned char *pstack =
NULL;
83 pEdgeset = _DGL_OUTEDGESET(pgraphIn, pHead);
91 stackItem.pnHead = pHead;
92 stackItem.pnEdge = pEdge;
96 &stackItem)) ==
NULL) {
104 pEdgeset = _DGL_INEDGESET(pgraphIn, pHead);
114 stackItem.pnHead = pHead;
115 stackItem.pnEdge = pEdge;
119 &stackItem)) ==
NULL) {
134 (
struct _stackItem *)
dgl_mempop(pstack, &istack,
135 sizeof(stackItem))) !=
NULL) {
136 pHead = pStackItem->pnHead;
137 pEdge = pStackItem->pnEdge;
139 if (pStackItem->iWay == 0)
140 pTail = _DGL_EDGE_TAILNODE(pgraphIn, pEdge);
142 pTail = _DGL_EDGE_HEADNODE(pgraphIn, pEdge);
145 if (
avl_find(pvVisited, &findVisited)) {
153 if (fnClip(pgraphIn, pgraphOut, &clipInput,
NULL, pvClipArg))
178 pEdgeset = _DGL_OUTEDGESET(pgraphIn, pTail);
185 stackItem.pnHead = pTail;
186 stackItem.pnEdge = pEdge;
190 &stackItem)) ==
NULL) {
198 pEdgeset = _DGL_INEDGESET(pgraphIn, pTail);
208 stackItem.pnHead = pTail;
209 stackItem.pnEdge = pEdge;
213 &stackItem)) ==
NULL) {
288 pEdgeset = _DGL_OUTEDGESET(pgraphIn, pHead);
304 pEdgeset = _DGL_INEDGESET(pgraphIn, pHead);
334 if (HeapItem.
flags == 0) {
335 if ((pHead = _DGL_EDGE_HEADNODE(pgraphIn, pEdge)) ==
NULL) {
339 if ((pTail = _DGL_EDGE_TAILNODE(pgraphIn, pEdge)) ==
NULL) {
344 else if (pgraphIn->
Version == 3) {
345 if ((pTail = _DGL_EDGE_HEADNODE(pgraphIn, pEdge)) ==
NULL) {
349 if ((pHead = _DGL_EDGE_TAILNODE(pgraphIn, pEdge)) ==
NULL) {
380 pEdgeset = _DGL_OUTEDGESET(pgraphIn, pHead);
396 pEdgeset = _DGL_OUTEDGESET(pgraphIn, pHead);