Graphviz 13.0.0~dev.20241212.1010
Loading...
Searching...
No Matches
Graphviz context library (GVC) API
Collaboration diagram for Graphviz context library (GVC) API:

Files

file  gvc.h
 Graphviz context library.
 
file  gvcext.h
 
file  gvcjob.h
 
file  gvcommon.h
 
file  gvconfig.h
 

Macros

#define LAYOUT_DONE(g)   (agbindrec(g, "Agraphinfo_t", 0, true) && GD_drawing(g))
 

Functions

void gvToggle (int)
 
GVC_tgvNEWcontext (const lt_symlist_t *builtins, int demand_loading)
 
GVC_tgvContext (void)
 
GVC_tgvContextPlugins (const lt_symlist_t *builtins, int demand_loading)
 
char ** gvcInfo (GVC_t *)
 
char * gvcVersion (GVC_t *)
 
char * gvcBuildDate (GVC_t *)
 
int gvParseArgs (GVC_t *gvc, int argc, char **argv)
 
graph_tgvNextInputGraph (GVC_t *gvc)
 
graph_tgvPluginsGraph (GVC_t *gvc)
 
int gvLayout (GVC_t *gvc, graph_t *g, const char *engine)
 
int gvLayoutJobs (GVC_t *gvc, graph_t *g)
 
bool gvLayoutDone (graph_t *g)
 
void attach_attrs (graph_t *g)
 
int gvRender (GVC_t *gvc, graph_t *g, const char *format, FILE *out)
 
int gvRenderFilename (GVC_t *gvc, graph_t *g, const char *format, const char *filename)
 
int gvRenderContext (GVC_t *gvc, graph_t *g, const char *format, void *context)
 
int gvRenderData (GVC_t *gvc, graph_t *g, const char *format, char **result, size_t *length)
 
void gvFreeRenderData (char *data)
 
int gvRenderJobs (GVC_t *gvc, graph_t *g)
 
int gvFreeLayout (GVC_t *gvc, graph_t *g)
 
void gvFinalize (GVC_t *gvc)
 
int gvFreeContext (GVC_t *gvc)
 
char ** gvPluginList (GVC_t *gvc, const char *kind, int *sz)
 
void gvAddLibrary (GVC_t *gvc, gvplugin_library_t *lib)
 
int gvToolTred (graph_t *g)
 

Detailed Description

Macro Definition Documentation

◆ LAYOUT_DONE

#define LAYOUT_DONE (   g)    (agbindrec(g, "Agraphinfo_t", 0, true) && GD_drawing(g))

Definition at line 52 of file gvc.h.

Function Documentation

◆ attach_attrs()

void attach_attrs ( graph_t g)

Definition at line 394 of file output.c.

References attach_attrs_and_arrows(), and NULL.

Referenced by dot_begin_graph(), json_begin_graph(), main(), and render().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvAddLibrary()

void gvAddLibrary ( GVC_t gvc,
gvplugin_library_t lib 
)

Add a library from your user application

Parameters
gvcGraphviz context to add library to
liblibrary to add

Definition at line 228 of file gvc.c.

References gvc, gvconfig_plugin_install_from_library(), and NULL.

Here is the call graph for this function:

◆ gvcBuildDate()

char * gvcBuildDate ( GVC_t gvc)

Definition at line 235 of file gvc.c.

References GVC_s::common, gvc, and GVCOMMON_s::info.

◆ gvcInfo()

char ** gvcInfo ( GVC_t gvc)

Definition at line 233 of file gvc.c.

References GVC_s::common, gvc, and GVCOMMON_s::info.

◆ gvContext()

GVC_t * gvContext ( void  )

Definition at line 24 of file gvc.c.

References agattr(), AGNODE, gvc, gvconfig(), gvNEWcontext(), NODENAME_ESC, and NULL.

Referenced by CFrmSettings::CFrmSettings(), main(), main(), and main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvContextPlugins()

GVC_t * gvContextPlugins ( const lt_symlist_t builtins,
int  demand_loading 
)

Definition at line 35 of file gvc.c.

References agattr(), AGNODE, gvc, gvconfig(), gvNEWcontext(), NODENAME_ESC, and NULL.

Referenced by gv_init(), main(), main(), and Tcldot_Init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvcVersion()

char * gvcVersion ( GVC_t gvc)

Definition at line 234 of file gvc.c.

References GVC_s::common, gvc, and GVCOMMON_s::info.

◆ gvFinalize()

void gvFinalize ( GVC_t gvc)

Definition at line 57 of file gvcontext.c.

References GVC_s::active_jobs, gvc, and gvrender_end_job().

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvFreeContext()

int gvFreeContext ( GVC_t gvc)

Definition at line 64 of file gvcontext.c.

References agerrors(), GVC_s::apis, GVC_s::config_path, emit_once_reset(), free(), graphviz_errors, gvc, GVC_s::gvgs, gvjobs_delete(), GVC_s::input_filenames, gvplugin_package_s::name, gvplugin_package_s::next, gvplugin_available_s::next, GVG_s::next, NULL, GVC_s::packages, gvplugin_package_s::path, textfont_dict_close(), and gvplugin_available_s::typestr.

Referenced by main(), and main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvFreeLayout()

int gvFreeLayout ( GVC_t gvc,
graph_t g 
)

Definition at line 105 of file gvlayout.c.

References agbindrec(), GD_cleanup, graph_cleanup(), gvc, and NULL.

Referenced by layout(), main(), main(), main(), and tcldot_layout().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvFreeRenderData()

void gvFreeRenderData ( char *  data)

Definition at line 223 of file gvc.c.

References free().

Here is the call graph for this function:

◆ gvLayout()

int gvLayout ( GVC_t gvc,
graph_t g,
const char *  engine 
)

Definition at line 52 of file gvc.c.

◆ gvLayoutDone()

bool gvLayoutDone ( graph_t g)

Definition at line 94 of file gvlayout.c.

References LAYOUT_DONE.

◆ gvLayoutJobs()

int gvLayoutJobs ( GVC_t gvc,
graph_t g 
)

Definition at line 53 of file gvlayout.c.

References agbindrec(), agerrorf(), agget(), agroot(), gvlayout_engine_s::cleanup, gvplugin_active_layout_s::engine, gvplugin_active_layout_s::features, gvlayout_features_t::flags, GD_cleanup, GD_drawing, GD_gvc, graph_init(), gv_fixLocale(), gvc, gvlayout_select(), gvplugin_list(), GVC_s::layout, gvlayout_engine_s::layout, LAYOUT_USES_RANKDIR, NO_SUPPORT, and NULL.

Referenced by gvLayout(), and main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvNEWcontext()

GVC_t * gvNEWcontext ( const lt_symlist_t builtins,
int  demand_loading 
)

Definition at line 45 of file gvcontext.c.

References agerrorf(), GVCOMMON_s::builtins, GVC_s::common, GVCOMMON_s::demand_loading, GVCOMMON_s::errorfn, gv_alloc(), gvc, GVCOMMON_s::info, and LibInfo.

Referenced by gvContext(), and gvContextPlugins().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvNextInputGraph()

graph_t * gvNextInputGraph ( GVC_t gvc)

Definition at line 501 of file input.c.

References agerrorf(), agread(), agsetfile(), GVCOMMON_s::cmdname, GVC_s::common, GVC_s::fidx, graphviz_errors, gv_fopen(), gvc, gvg_init(), GVC_s::input_filenames, and NULL.

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvParseArgs()

int gvParseArgs ( GVC_t gvc,
int  argc,
char **  argv 
)

Definition at line 220 of file args.c.

References config_extra_args(), dotneato_args_initialize(), fdp_extra_args(), gvc, gvplugin_write_status(), neato_extra_args(), and Verbose.

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvPluginList()

char ** gvPluginList ( GVC_t gvc,
const char *  kind,
int *  sz 
)

Definition at line 427 of file gvplugin.c.

References agerrorf(), api_names, GVC_s::apis, ARRAY_SIZE, strview_t::data, gvc, gvplugin_available_s::next, NULL, strview(), strview_case_eq(), strview_str(), and gvplugin_available_s::typestr.

Referenced by LoadPlugins().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvPluginsGraph()

graph_t * gvPluginsGraph ( GVC_t gvc)

Definition at line 208 of file input.c.

References gvc, gvg_init(), and P_graph.

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvRender()

int gvRender ( GVC_t gvc,
graph_t g,
const char *  format,
FILE *  out 
)

Definition at line 84 of file gvc.c.

References agerrorf(), GVJ_s::flags, format, gvc, gvjobs_delete(), gvjobs_output_langname(), gvplugin_list(), gvrender_end_job(), gvrender_select(), gvRenderJobs(), GVC_s::job, LAYOUT_DONE, LAYOUT_NOT_REQUIRED, NULL, out(), GVJ_s::output_file, GVJ_s::output_lang, GVJ_s::output_langname, and OUTPUT_NOT_REQUIRED.

Referenced by graphcmd_internal(), json_begin_graph(), main(), main(), main(), render(), render(), renderchannel(), renderresult(), and renderresult().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvRenderContext()

int gvRenderContext ( GVC_t gvc,
graph_t g,
const char *  format,
void *  context 
)

Definition at line 143 of file gvc.c.

References agerrorf(), GVJ_s::context, GVJ_s::external_context, GVJ_s::flags, format, gvc, gvdevice_finalize(), gvjobs_delete(), gvjobs_output_langname(), gvplugin_list(), gvrender_end_job(), gvrender_select(), gvRenderJobs(), GVC_s::job, LAYOUT_DONE, LAYOUT_NOT_REQUIRED, GVJ_s::output_lang, and GVJ_s::output_langname.

Referenced by graphcmd_internal().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvRenderData()

int gvRenderData ( GVC_t gvc,
graph_t g,
const char *  format,
char **  result,
size_t *  length 
)

Definition at line 175 of file gvc.c.

References agerrorf(), GVJ_s::flags, format, gvc, gvjobs_delete(), gvjobs_output_langname(), gvplugin_list(), gvrender_end_job(), gvrender_select(), gvRenderJobs(), GVC_s::job, LAYOUT_DONE, LAYOUT_NOT_REQUIRED, malloc(), GVJ_s::output_data, GVJ_s::output_data_allocated, OUTPUT_DATA_INITIAL_ALLOCATION, GVJ_s::output_data_position, GVJ_s::output_lang, and GVJ_s::output_langname.

Referenced by renderdata().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvRenderFilename()

int gvRenderFilename ( GVC_t gvc,
graph_t g,
const char *  format,
const char *  filename 
)

Definition at line 114 of file gvc.c.

◆ gvRenderJobs()

◆ gvToggle()

void gvToggle ( int  s)

Definition at line 402 of file utils.c.

References gvToggle(), and Tflag.

Referenced by gvToggle(), and main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gvToolTred()

int gvToolTred ( graph_t g)

Perform a Transitive Reduction on a graph

Parameters
ggraph to be transformed.

Definition at line 70 of file gvtool_tred.c.

References agclean(), agfstnode(), aginit(), agisdirected(), agnameof(), AGNODE, agnxtnode(), dfs(), and NULL.

Referenced by tred().

Here is the call graph for this function:
Here is the caller graph for this function: