#include "eg_pdp.h"
Include dependency graph for eg_pdp.c:
Go to the source code of this file.
Defines | |
#define | EGd2dGetEdge(dedge) |
#define | EGd2dGetEdgeCost(dedge) |
#define | EGddGetEdge(DOM, a, b) |
#define | EGddPathGetEdge(dom, path, b) |
#define | GETROOTEDGE(curroot, Graph) (Graph->G + Graph->G[curroot].link[1]) |
#define | GETNEXTEDGE(curedge, curroot, Graph) ((curedge->link[1] < Graph->N) ? GETROOTEDGE(curroot,Graph) : (Graph->G + curedge->link[1])) |
#define | GETOTHEREND(cedge, G) (G->G[gp_GetTwinArc(G,cedge - G->G)].v) |
#define | DPU_GETID(edge, os) (EGmengerGetEdgeData(edge,os)->id) |
Functions | |
static int | getNextA (unsigned int *nextA, unsigned int curA, unsigned int frontier, unsigned int bounds[3][2]) |
int | EGfixDualDominos (EGlist_t *domino_list, int nnodes, int nedges, double *weight, int *edges, int *elim_edges, int nelim_edges, graphP G, EGmemPool_t *mem) |
int | EGuntangleAllDomino (EGlist_t *ddom_list, EGdGraph_t *dgraph, EGlist_t **embed, EGmemPool_t *mem) |
int | EGgetPrimalDP (EGddpConstraint_t *ddp, int nnodes, int nedges, int *const edges, int *const elim_edges, int nelim_edges, double *const weight, int *const ndom, int **const nAset, int **const nBset, int *const nHandle, int ***const Aset, int ***const Bset, int **const Handle, double *const violation, graphP G, EGmemPool_t *const mem) |
Variables | |
static const size_t | os [EG_MENGER_NUMOS] |
|
|
|
Value: ((graphNodeP)(\ ((EGmengerEdgeData_t*)(((EGdGraphEdge_t*)(dedge))->data))->data )) |
|
Value: (\ ((EGmengerEdgeData_t*)(((EGdGraphEdge_t*)(dedge))->data))->cost) |
|
Value: ((graphNodeP)(((DOM)->DDtype == DOM_CC_ONE) ? \ (DOM)->path[a][b]:((EGmengerEdgeData_t*)(((EGdGraphEdge_t*)\ ((DOM)->path[a][b]))->data))->data)) |
|
Value: ((graphNodeP)((dom->DDtype == \ DOM_DUAL_NORM) ? ((EGmengerEdgeData_t*)(((EGdGraphEdge_t*)\ (path[b]))->data))->data : path[b])) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Initial value: { [EG_MENGER_PI] = offsetof (EGmengerNodeData_t, pi), [EG_MENGER_DIST] = offsetof (EGmengerNodeData_t, dist), [EG_MENGER_ORIG_DIST] = offsetof (EGmengerNodeData_t, orig_dist), [EG_MENGER_NDIST] = offsetof (EGmengerNodeData_t, ndist), [EG_MENGER_ORIG_NDIST] = offsetof (EGmengerNodeData_t, orig_ndist), [EG_MENGER_MARK] = offsetof (EGmengerNodeData_t, marker), [EG_MENGER_ORIG_MARK] = offsetof (EGmengerNodeData_t, orig_marker), [EG_MENGER_FATHER] = offsetof (EGmengerNodeData_t, father), [EG_MENGER_ORIG_FATHER] = offsetof (EGmengerNodeData_t, orig_father), [EG_MENGER_HEAP_CONNECTOR] = offsetof (EGmengerNodeData_t, hc), [EG_MENGER_ECOST] = offsetof (EGmengerEdgeData_t, cost), [EG_MENGER_REDUCED_ECOST] = offsetof (EGmengerEdgeData_t, reduced_cost), [EG_MENGER_IS_IN_SOL] = offsetof (EGmengerEdgeData_t, is_in_solution), [EG_MENGER_EDATA] = offsetof (EGmengerEdgeData_t, data) } |