void graphLinkVertices(Graph *G, GVertex *source, GVertex *destination, int weight, Generic ExtraInfo) { GEdge *a=NULL; NodeList *pNodo=NULL; a = (GEdge *)malloc(sizeof(GEdge)); if(a) { a->source = source; a->destination = destination; a->weight = weight; a->ExtraInfo = ExtraInfo; pNodo=nodeListNew(a); if(pNodo) { listAddNode(source->LAdjacents, pNodo); } else { free(a); a = NULL; } } }
void graphAddVertex(Graph *G, GVertex *v) { NodeList *pNode=NULL; pNode = nodeListNew(v); if(pNode) { listAddNode(G, pNode); } }
List *listReadFile(char *fileName, readfn readLine){ List *L = listNew(); FILE *F = fopen(fileName, "r"); if (F==NULL) return(NULL); while(!feof(F)){ Generic g; g = readLine(F); if(!feof(F)) listAddNode(L, nodeListNew(g)); } return L; }