48 fprintf(stderr,
"Can't open %s\n", sp->
u.
Files[sp->
ctr - 1]);
87 Agraph_t *(*readf)(
const char *,
void *)) {
91 fprintf(stderr,
"ingraphs: out of memory\n");
111 fprintf(stderr,
"ingraphs: NULL read function\n");
119 Agraph_t *(*readf)(
const char *,
void *)) {
120 return new_ing(sp, files, 0, readf);
127 Agraph_t *(*readf)(
const char *,
void *)) {
128 return new_ing(sp, 0, graphs, readf);
148 (void)fclose(sp->
fp);
abstract graph C library, Cgraph API
Agraph_t * agconcat(Agraph_t *g, const char *filename, void *chan, Agdisc_t *disc)
merges the file contents with a pre-existing graph
FILE * gv_fopen(const char *filename, const char *mode)
wrapper around fopen for internal library usage
char * fileName(ingraph_state *sp)
Return name of current file being processed.
static ingraph_state * new_ing(ingraph_state *sp, char **files, Agraph_t **graphs, Agraph_t *(*readf)(const char *, void *))
void closeIngraph(ingraph_state *sp)
Agraph_t * nextGraph(ingraph_state *sp)
ingraph_state * newIng(ingraph_state *sp, char **files, Agraph_t *(*readf)(const char *, void *))
static Agraph_t * dflt_read(const char *filename, void *fp)
ingraph_state * newIngraph(ingraph_state *sp, char **files)
ingraph_state * newIngGraphs(ingraph_state *sp, Agraph_t **graphs, Agraph_t *(*readf)(const char *, void *))
static void nextFile(ingraph_state *sp)
supports user-supplied data
Agraph_t *(* readf)(const char *, void *)
union ingraph_state::@68 u