Open
Graph Drawing
Framework

 v.2012.07
 

ogdf::SimDraw Class Reference

The Base class for simultaneous graph drawing. More...

#include <ogdf/simultaneous/SimDraw.h>

List of all members.

Public Types

enum  CompareBy { index, label }
 Types for node comparison. More...

Public Member Functions

 SimDraw ()
 constructs empty simdraw instance
void addAttribute (long attr)
 gives access to new attribute if not already given
bool addGraph (const Graph &G)
 adds the graph g to the instance m_G
bool addGraphAttributes (const GraphAttributes &GA)
 adds new GraphAttributes to m_G
void clear ()
 empty graph
const CompareBycompareBy () const
 returns compare mode
CompareBycompareBy ()
 returns compare mode
bool consistencyCheck () const
 checks whether instance is a consistent SimDraw instance
const GraphconstGraph () const
 returns graph
GraphconstGraph ()
 returns graph
const GraphAttributesconstGraphAttributes () const
 returns graphattributes
GraphAttributesconstGraphAttributes ()
 returns graphattributes
const Graph getBasicGraph (int i) const
 returns graph consisting of all edges and nodes from SubGraph i
void getBasicGraphAttributes (int i, GraphAttributes &GA, Graph &G)
 returns graphattributes associated with basic graph i
const bool & isDummy (node v) const
 returns true if node v is marked as dummy
bool & isDummy (node v)
 returns true if node v is marked as dummy
bool isPhantomDummy (node v) const
 returns true if node v is a cost zero dummy node
bool isProperDummy (node v) const
 returns true if node v is a cost greater zero dummy node
int maxSubGraph () const
 calculates maximum number of input graphs
int numberOfBasicGraphs () const
 returns number of BasicGraphs in m_G
int numberOfDummyNodes () const
 returns number of dummy nodes
int numberOfNodes () const
 returns number of nodes
int numberOfPhantomDummyNodes () const
 returns number of phantom dummy nodes
int numberOfProperDummyNodes () const
 returns number of proper dummy nodes
void readGML (const char *fileName)
 calls GraphAttributes::readGML
void writeGML (const char *fileName) const
 calls GraphAttributes::writeGML

Private Member Functions

bool compare (const GraphAttributes &vGA, node v, const GraphAttributes &wGA, node w) const
 compares two nodes v and w by compare mode stored in m_compareBy
bool compareById (node v, node w) const
 compares two nodes v and w by their ids
bool compareByLabel (const GraphAttributes &vGA, node v, const GraphAttributes &wGA, node w) const
 compares two nodes v and w by their labels

Private Attributes

CompareBy m_compareBy
 compare mode
Graph m_G
 the underlying graph
GraphAttributes m_GA
 the underlying graphattributes
NodeArray< bool > m_isDummy
 dummy nodes may be colored differently

Friends

class SimDrawCaller
class SimDrawColorizer
class SimDrawCreator
class SimDrawCreatorSimple
class SimDrawManipulatorModule

Detailed Description

The Base class for simultaneous graph drawing.

This class provides functions for simultaneous graph drawing, such as adding new subgraphs.

It is possible to store up to 32 basicgraphs in one instance of the class. The basic graph membership for all edges is stored via GraphAttributes::edgeSubgraph. Several functions are outsourced in corresponding manipulator modules.

Definition at line 64 of file SimDraw.h.


Member Enumeration Documentation

Types for node comparison.

Enumerator:
index 

nodes are compared by their indices

label 

nodes are compared by their labels

Definition at line 74 of file SimDraw.h.


Constructor & Destructor Documentation

ogdf::SimDraw::SimDraw ( )

constructs empty simdraw instance

GraphAttributes::edgeSubGraph is activated. No other attributes are active.


Member Function Documentation

void ogdf::SimDraw::addAttribute ( long  attr)
inline

gives access to new attribute if not already given

Definition at line 195 of file SimDraw.h.

bool ogdf::SimDraw::addGraph ( const Graph G)

adds the graph g to the instance m_G

If the number of subgraphs in m_G is less than 32 and m_compareBy is set to index, this function will add graph G to m_G and return true. Otherwise this function returns false.

bool ogdf::SimDraw::addGraphAttributes ( const GraphAttributes GA)

adds new GraphAttributes to m_G

If the number of subgraphs in m_G is less than 32, this function will add the new GraphAttributes GA to m_G and return true. Otherwise this function returns false. The function uses the current compare mode.

void ogdf::SimDraw::clear ( )
inline

empty graph

Definition at line 105 of file SimDraw.h.

bool ogdf::SimDraw::compare ( const GraphAttributes vGA,
node  v,
const GraphAttributes wGA,
node  w 
) const
private

compares two nodes v and w by compare mode stored in m_compareBy

This method checks whether m_compareBy was set to index or label and uses the corresponding compare method.

const CompareBy& ogdf::SimDraw::compareBy ( ) const
inline

returns compare mode

Definition at line 108 of file SimDraw.h.

CompareBy& ogdf::SimDraw::compareBy ( )
inline

returns compare mode

Definition at line 114 of file SimDraw.h.

bool ogdf::SimDraw::compareById ( node  v,
node  w 
) const
inlineprivate

compares two nodes v and w by their ids

Definition at line 203 of file SimDraw.h.

bool ogdf::SimDraw::compareByLabel ( const GraphAttributes vGA,
node  v,
const GraphAttributes wGA,
node  w 
) const
inlineprivate

compares two nodes v and w by their labels

This method only works, if attribute nodeLabel is activated and set properly. Otherwise it is recommended to use compareById.

Definition at line 211 of file SimDraw.h.

bool ogdf::SimDraw::consistencyCheck ( ) const

checks whether instance is a consistent SimDraw instance

const Graph& ogdf::SimDraw::constGraph ( ) const
inline

returns graph

Definition at line 96 of file SimDraw.h.

Graph& ogdf::SimDraw::constGraph ( )
inline

returns graph

Definition at line 98 of file SimDraw.h.

const GraphAttributes& ogdf::SimDraw::constGraphAttributes ( ) const
inline

returns graphattributes

Definition at line 100 of file SimDraw.h.

GraphAttributes& ogdf::SimDraw::constGraphAttributes ( )
inline

returns graphattributes

Definition at line 102 of file SimDraw.h.

const Graph ogdf::SimDraw::getBasicGraph ( int  i) const

returns graph consisting of all edges and nodes from SubGraph i

void ogdf::SimDraw::getBasicGraphAttributes ( int  i,
GraphAttributes GA,
Graph G 
)

returns graphattributes associated with basic graph i

Supported attributes are: nodeGraphics, edgeGraphics, edgeLabel, nodeLabel, nodeId, edgeIntWeight and edgeColor.

const bool& ogdf::SimDraw::isDummy ( node  v) const
inline

returns true if node v is marked as dummy

All dummy node features are introduced for usage when running callSubgraphPlanarizer of SimDrawCaller.

Definition at line 121 of file SimDraw.h.

bool& ogdf::SimDraw::isDummy ( node  v)
inline

returns true if node v is marked as dummy

Definition at line 123 of file SimDraw.h.

bool ogdf::SimDraw::isPhantomDummy ( node  v) const
inline

returns true if node v is a cost zero dummy node

Definition at line 125 of file SimDraw.h.

bool ogdf::SimDraw::isProperDummy ( node  v) const

returns true if node v is a cost greater zero dummy node

int ogdf::SimDraw::maxSubGraph ( ) const

calculates maximum number of input graphs

Subgraphs are numbered from 0 to 31. This method returns the number of the maximal used subgraph. If the graph is empty, the function returns -1.

int ogdf::SimDraw::numberOfBasicGraphs ( ) const

returns number of BasicGraphs in m_G

This function uses maxSubGraph to return the number of basic graphs contained in m_G. If the graph is empty, the function returns 0.

int ogdf::SimDraw::numberOfDummyNodes ( ) const

returns number of dummy nodes

int ogdf::SimDraw::numberOfNodes ( ) const
inline

returns number of nodes

Definition at line 133 of file SimDraw.h.

int ogdf::SimDraw::numberOfPhantomDummyNodes ( ) const

returns number of phantom dummy nodes

int ogdf::SimDraw::numberOfProperDummyNodes ( ) const

returns number of proper dummy nodes

void ogdf::SimDraw::readGML ( const char *  fileName)
inline

calls GraphAttributes::readGML

Definition at line 161 of file SimDraw.h.

void ogdf::SimDraw::writeGML ( const char *  fileName) const
inline

calls GraphAttributes::writeGML

Definition at line 163 of file SimDraw.h.


Friends And Related Function Documentation

friend class SimDrawCaller
friend

Definition at line 67 of file SimDraw.h.

friend class SimDrawColorizer
friend

Definition at line 68 of file SimDraw.h.

friend class SimDrawCreator
friend

Definition at line 69 of file SimDraw.h.

friend class SimDrawCreatorSimple
friend

Definition at line 70 of file SimDraw.h.

friend class SimDrawManipulatorModule
friend

Definition at line 66 of file SimDraw.h.


Member Data Documentation

CompareBy ogdf::SimDraw::m_compareBy
private

compare mode

Definition at line 82 of file SimDraw.h.

Graph ogdf::SimDraw::m_G
private

the underlying graph

Definition at line 80 of file SimDraw.h.

GraphAttributes ogdf::SimDraw::m_GA
private

the underlying graphattributes

Definition at line 81 of file SimDraw.h.

NodeArray<bool> ogdf::SimDraw::m_isDummy
private

dummy nodes may be colored differently

Definition at line 83 of file SimDraw.h.


The documentation for this class was generated from the following file: