Graphviz 13.0.0~dev.20241220.2304
Loading...
Searching...
No Matches
circular.h File Reference
#include "render.h"
#include <circogen/block.h>
#include <circogen/circo.h>
Include dependency graph for circular.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  circ_state
 
struct  ndata
 
struct  cdata
 
struct  edata
 

Macros

#define NDATA(n)   ((ndata*)(ND_alg(n)))
 
#define DNODE(n)   (NDATA(n)->dnode)
 
#define EDGEDATA(e)   ((edata*)(ED_alg(e)))
 
#define EDGEORDER(e)   (EDGEDATA(e)->order)
 
#define DATA(n)   ((cdata*)(ND_alg(n)))
 
#define ORIGG(n)   (DATA(n)->orig.g)
 
#define ORIGN(n)   (DATA(n)->orig.np)
 
#define FLAGS(n)   (DATA(n)->flags)
 
#define PARENT(n)   (DATA(n)->parent)
 
#define BLOCK(n)   (DATA(n)->block)
 
#define NEXT(n)   (DATA(n)->u.bc.next)
 
#define VAL(n)   (DATA(n)->u.bc.val)
 
#define LOWVAL(n)   (DATA(n)->u.bc.low_val)
 
#define CLONE(n)   (DATA(n)->u.clone)
 
#define TPARENT(n)   (DATA(n)->u.t.tparent)
 
#define LEAFONE(n)   (DATA(n)->u.t.first)
 
#define LEAFTWO(n)   (DATA(n)->u.t.second)
 
#define DISTONE(n)   (DATA(n)->u.t.fdist)
 
#define DISTTWO(n)   (DATA(n)->u.t.sdist)
 
#define POSITION(n)   (DATA(n)->u.f.pos)
 
#define PSI(n)   (DATA(n)->u.f.psi)
 
#define VISITED_F   (1 << 0)
 
#define ONSTACK_F   (1 << 2)
 
#define PARENT_F   (1 << 3)
 
#define PATH_F   (1 << 4)
 
#define NEIGHBOR_F   (1 << 5)
 
#define VISITED(n)   (FLAGS(n)&VISITED_F)
 
#define ONSTACK(n)   (FLAGS(n)&ONSTACK_F)
 
#define ISPARENT(n)   (FLAGS(n)&PARENT_F)
 
#define ONPATH(n)   (FLAGS(n)&PATH_F)
 
#define NEIGHBOR(n)   (FLAGS(n)&NEIGHBOR_F)
 
#define SET_VISITED(n)   (FLAGS(n) |= VISITED_F)
 
#define SET_ONSTACK(n)   (FLAGS(n) |= ONSTACK_F)
 
#define SET_PARENT(n)   (FLAGS(n) |= PARENT_F)
 
#define SET_ONPATH(n)   (FLAGS(n) |= PATH_F)
 
#define SET_NEIGHBOR(n)   (FLAGS(n) |= NEIGHBOR_F)
 
#define UNSET_VISITED(n)   (FLAGS(n) &= ~VISITED_F)
 
#define UNSET_ONSTACK(n)   (FLAGS(n) &= ~ONSTACK_F)
 
#define UNSET_NEIGHBOR(n)   (FLAGS(n) &= ~NEIGHBOR_F)
 
#define DEGREE(n)   (ND_order(n))
 

Functions

void circularLayout (Agraph_t *sg, Agraph_t *rg, int *blockCount)
 

Macro Definition Documentation

◆ BLOCK

#define BLOCK (   n)    (DATA(n)->block)

Definition at line 85 of file circular.h.

◆ CLONE

#define CLONE (   n)    (DATA(n)->u.clone)

Definition at line 89 of file circular.h.

◆ DATA

#define DATA (   n)    ((cdata*)(ND_alg(n)))

Definition at line 80 of file circular.h.

◆ DEGREE

#define DEGREE (   n)    (ND_order(n))

Definition at line 120 of file circular.h.

◆ DISTONE

#define DISTONE (   n)    (DATA(n)->u.t.fdist)

Definition at line 93 of file circular.h.

◆ DISTTWO

#define DISTTWO (   n)    (DATA(n)->u.t.sdist)

Definition at line 94 of file circular.h.

◆ DNODE

#define DNODE (   n)    (NDATA(n)->dnode)

Definition at line 75 of file circular.h.

◆ EDGEDATA

#define EDGEDATA (   e)    ((edata*)(ED_alg(e)))

Definition at line 77 of file circular.h.

◆ EDGEORDER

#define EDGEORDER (   e)    (EDGEDATA(e)->order)

Definition at line 78 of file circular.h.

◆ FLAGS

#define FLAGS (   n)    (DATA(n)->flags)

Definition at line 83 of file circular.h.

◆ ISPARENT

#define ISPARENT (   n)    (FLAGS(n)&PARENT_F)

Definition at line 106 of file circular.h.

◆ LEAFONE

#define LEAFONE (   n)    (DATA(n)->u.t.first)

Definition at line 91 of file circular.h.

◆ LEAFTWO

#define LEAFTWO (   n)    (DATA(n)->u.t.second)

Definition at line 92 of file circular.h.

◆ LOWVAL

#define LOWVAL (   n)    (DATA(n)->u.bc.low_val)

Definition at line 88 of file circular.h.

◆ NDATA

#define NDATA (   n)    ((ndata*)(ND_alg(n)))

Definition at line 74 of file circular.h.

◆ NEIGHBOR

#define NEIGHBOR (   n)    (FLAGS(n)&NEIGHBOR_F)

Definition at line 108 of file circular.h.

◆ NEIGHBOR_F

#define NEIGHBOR_F   (1 << 5)

Definition at line 102 of file circular.h.

◆ NEXT

#define NEXT (   n)    (DATA(n)->u.bc.next)

Definition at line 86 of file circular.h.

◆ ONPATH

#define ONPATH (   n)    (FLAGS(n)&PATH_F)

Definition at line 107 of file circular.h.

◆ ONSTACK

#define ONSTACK (   n)    (FLAGS(n)&ONSTACK_F)

Definition at line 105 of file circular.h.

◆ ONSTACK_F

#define ONSTACK_F   (1 << 2)

Definition at line 99 of file circular.h.

◆ ORIGG

#define ORIGG (   n)    (DATA(n)->orig.g)

Definition at line 81 of file circular.h.

◆ ORIGN

#define ORIGN (   n)    (DATA(n)->orig.np)

Definition at line 82 of file circular.h.

◆ PARENT

#define PARENT (   n)    (DATA(n)->parent)

Definition at line 84 of file circular.h.

◆ PARENT_F

#define PARENT_F   (1 << 3)

Definition at line 100 of file circular.h.

◆ PATH_F

#define PATH_F   (1 << 4)

Definition at line 101 of file circular.h.

◆ POSITION

#define POSITION (   n)    (DATA(n)->u.f.pos)

Definition at line 95 of file circular.h.

◆ PSI

#define PSI (   n)    (DATA(n)->u.f.psi)

Definition at line 96 of file circular.h.

◆ SET_NEIGHBOR

#define SET_NEIGHBOR (   n)    (FLAGS(n) |= NEIGHBOR_F)

Definition at line 114 of file circular.h.

◆ SET_ONPATH

#define SET_ONPATH (   n)    (FLAGS(n) |= PATH_F)

Definition at line 113 of file circular.h.

◆ SET_ONSTACK

#define SET_ONSTACK (   n)    (FLAGS(n) |= ONSTACK_F)

Definition at line 111 of file circular.h.

◆ SET_PARENT

#define SET_PARENT (   n)    (FLAGS(n) |= PARENT_F)

Definition at line 112 of file circular.h.

◆ SET_VISITED

#define SET_VISITED (   n)    (FLAGS(n) |= VISITED_F)

Definition at line 110 of file circular.h.

◆ TPARENT

#define TPARENT (   n)    (DATA(n)->u.t.tparent)

Definition at line 90 of file circular.h.

◆ UNSET_NEIGHBOR

#define UNSET_NEIGHBOR (   n)    (FLAGS(n) &= ~NEIGHBOR_F)

Definition at line 118 of file circular.h.

◆ UNSET_ONSTACK

#define UNSET_ONSTACK (   n)    (FLAGS(n) &= ~ONSTACK_F)

Definition at line 117 of file circular.h.

◆ UNSET_VISITED

#define UNSET_VISITED (   n)    (FLAGS(n) &= ~VISITED_F)

Definition at line 116 of file circular.h.

◆ VAL

#define VAL (   n)    (DATA(n)->u.bc.val)

Definition at line 87 of file circular.h.

◆ VISITED

#define VISITED (   n)    (FLAGS(n)&VISITED_F)

Definition at line 104 of file circular.h.

◆ VISITED_F

#define VISITED_F   (1 << 0)

Definition at line 98 of file circular.h.

Function Documentation

◆ circularLayout()

void circularLayout ( Agraph_t sg,
Agraph_t rg,
int *  blockCount 
)

Definition at line 65 of file circular.c.

References agfstnode(), agget(), agnnodes(), circ_state::blockCount, circPos(), createBlocktree(), createOneBlock(), freeBlocktree(), initGraphAttrs(), mapbool(), and ND_pos.

Referenced by circoLayout().

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