Graphviz 13.0.0~dev.20241220.2304
Loading...
Searching...
No Matches
unflatten.c File Reference

adjusts directed graphs to improve layout aspect ratio, API: cgraph.h, implements graphviz_unflatten, used in cmd/tools/unflatten.c More...

#include <cgraph/cghdr.h>
#include <stdbool.h>
#include <stddef.h>
#include <stdio.h>
Include dependency graph for unflatten.c:

Go to the source code of this file.

Functions

static int myindegree (Agnode_t *n)
 
static int myoutdegree (Agnode_t *n)
 
static bool isleaf (Agnode_t *n)
 
static bool ischainnode (Agnode_t *n)
 
static void adjustlen (Agedge_t *e, Agsym_t *sym, int newlen)
 
static Agsym_tbindedgeattr (Agraph_t *g, char *str)
 
void graphviz_unflatten (Agraph_t *g, const graphviz_unflatten_options_t *opts)
 

Function Documentation

◆ adjustlen()

static void adjustlen ( Agedge_t e,
Agsym_t sym,
int  newlen 
)
static

Definition at line 45 of file unflatten.c.

References agxset().

Referenced by graphviz_unflatten().

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

◆ bindedgeattr()

static Agsym_t * bindedgeattr ( Agraph_t g,
char *  str 
)
static

Definition at line 52 of file unflatten.c.

References agattr(), AGEDGE, and str.

Referenced by graphviz_unflatten().

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

◆ ischainnode()

static bool ischainnode ( Agnode_t n)
static

Definition at line 41 of file unflatten.c.

References myindegree(), and myoutdegree().

Referenced by graphviz_unflatten().

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

◆ isleaf()

static bool isleaf ( Agnode_t n)
static

Definition at line 39 of file unflatten.c.

References myindegree(), and myoutdegree().

Referenced by graphviz_unflatten().

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

◆ myindegree()

static int myindegree ( Agnode_t n)
static

Definition at line 25 of file unflatten.c.

References agdegree(), and Agnode_s::root.

Referenced by graphviz_unflatten(), ischainnode(), and isleaf().

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

◆ myoutdegree()

static int myoutdegree ( Agnode_t n)
static

Definition at line 28 of file unflatten.c.

References agfstout(), aghead, agnxtout(), agtail, and Agnode_s::root.

Referenced by graphviz_unflatten(), ischainnode(), and isleaf().

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