Graphviz 13.1.3~dev.20250829.0113
Loading...
Searching...
No Matches
clusteredges.c File Reference
#include "config.h"
#include <assert.h>
#include <fdpgen/clusteredges.h>
#include <fdpgen/fdp.h>
#include <limits.h>
#include <neatogen/neatoprocs.h>
#include <pathplan/vispath.h>
#include <pack/pack.h>
#include <stdbool.h>
#include <util/alloc.h>
#include <util/list.h>
Include dependency graph for clusteredges.c:

Go to the source code of this file.

Macros

#define FDP_PRIVATE   1
 

Functions

typedef LIST (Ppoly_t *)
 
static void addGraphObjs (objlist_t *l, graph_t *g, void *tex, void *hex, expand_t *pm)
 
static void raiseLevel (objlist_t *l, int maxlvl, void *ex, int minlvl, graph_t **gp, expand_t *pm)
 
static objlist_t objectList (edge_t *ep, expand_t *pm)
 
int compoundEdges (graph_t *g, expand_t *pm, int edgetype)
 

Macro Definition Documentation

◆ FDP_PRIVATE

#define FDP_PRIVATE   1

Definition at line 19 of file clusteredges.c.

Function Documentation

◆ addGraphObjs()

static void addGraphObjs ( objlist_t *  l,
graph_t g,
void *  tex,
void *  hex,
expand_t pm 
)
static

Definition at line 105 of file clusteredges.c.

References agfstnode(), agnxtnode(), GD_clust, GD_n_cluster, IS_CLUST_NODE, LIST_APPEND, makeObstacle(), and PARENT.

Referenced by objectList(), and raiseLevel().

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

◆ compoundEdges()

int compoundEdges ( graph_t g,
expand_t pm,
int  edgetype 
)

Definition at line 207 of file clusteredges.c.

References agerr(), agfstnode(), agfstout(), aghead, agnxtnode(), agnxtout(), AGPREV, agwarningf(), CL_OFFSET, ED_count, ED_path, ED_to_virt, GD_nodesep, getPack(), getPath(), head, LIST_FREE, LIST_FRONT, LIST_SIZE, LIST_SYNC, makeSelfArcs(), makeSpline(), NULL, objectList(), Plegal_arrangement(), Pobsclose(), Pobsopen(), sepFactor(), expand_t::x, and expand_t::y.

Referenced by fdpSplines().

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

◆ LIST()

typedef LIST ( Ppoly_t )

Definition at line 33 of file clusteredges.c.

References Ppoly_t::pn, Ppoly_t::ps, Pxy_t::x, and Pxy_t::y.

◆ objectList()

static objlist_t objectList ( edge_t ep,
expand_t pm 
)
static

Definition at line 151 of file clusteredges.c.

References addGraphObjs(), aghead, agtail, IS_CLUST_NODE, NULL, PARENT, and raiseLevel().

Referenced by compoundEdges().

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

◆ raiseLevel()

static void raiseLevel ( objlist_t *  l,
int  maxlvl,
void *  ex,
int  minlvl,
graph_t **  gp,
expand_t pm 
)
static

Definition at line 130 of file clusteredges.c.

References addGraphObjs(), and NULL.

Referenced by objectList().

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