Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

ogdf::Block Class Reference

Class representing idea of Blocks used in GlobalSifting and GridSifting algorithms. More...

#include <ogdf/layered/BlockOrder.h>

Public Member Functions

 Block (edge e)
 Creates new edge block for an edge e. More...
 
 Block (node v)
 Creates new vertex block for a node v. More...
 
 ~Block ()
 
bool isEdgeBlock ()
 
bool isVertexBlock ()
 

Private Attributes

edge m_Edge = nullptr
 The edge for which this block was created. More...
 
int m_index = 0
 The index of this block in BlockOrder. More...
 
Array< int > m_InvertedIncoming
 Positions of this block in m_NeighboursOutgoing of neighbours. More...
 
Array< int > m_InvertedOutgoing
 Positions of this block in m_NeighboursIncoming of neighbours. More...
 
bool m_isEdgeBlock
 
bool m_isNodeBlock
 
int m_lower = 0
 The bottom level of this block. More...
 
Array< int > m_NeighboursIncoming
 Indices of neighbouring incoming blocks. More...
 
Array< int > m_NeighboursOutgoing
 Indices of neighbouring outgoing blocks. More...
 
node m_Node = nullptr
 The node for which this block was created. More...
 
Array< nodem_nodes
 Vertices from the proper hierarchy corresponding to this block. More...
 
int m_upper = 0
 The top level of this block. More...
 

Friends

class BlockOrder
 

Detailed Description

Class representing idea of Blocks used in GlobalSifting and GridSifting algorithms.

For more information see papers and BlockOrder.

Definition at line 68 of file BlockOrder.h.

Constructor & Destructor Documentation

◆ ~Block()

ogdf::Block::~Block ( )
inline

Definition at line 96 of file BlockOrder.h.

◆ Block() [1/2]

ogdf::Block::Block ( node  v)
explicit

Creates new vertex block for a node v.

◆ Block() [2/2]

ogdf::Block::Block ( edge  e)
explicit

Creates new edge block for an edge e.

Member Function Documentation

◆ isEdgeBlock()

bool ogdf::Block::isEdgeBlock ( )
inline

Definition at line 98 of file BlockOrder.h.

◆ isVertexBlock()

bool ogdf::Block::isVertexBlock ( )
inline

Definition at line 100 of file BlockOrder.h.

Friends And Related Function Documentation

◆ BlockOrder

friend class BlockOrder
friend

Definition at line 69 of file BlockOrder.h.

Member Data Documentation

◆ m_Edge

edge ogdf::Block::m_Edge = nullptr
private

The edge for which this block was created.

Definition at line 90 of file BlockOrder.h.

◆ m_index

int ogdf::Block::m_index = 0
private

The index of this block in BlockOrder.

Definition at line 72 of file BlockOrder.h.

◆ m_InvertedIncoming

Array<int> ogdf::Block::m_InvertedIncoming
private

Positions of this block in m_NeighboursOutgoing of neighbours.

Definition at line 82 of file BlockOrder.h.

◆ m_InvertedOutgoing

Array<int> ogdf::Block::m_InvertedOutgoing
private

Positions of this block in m_NeighboursIncoming of neighbours.

Definition at line 86 of file BlockOrder.h.

◆ m_isEdgeBlock

bool ogdf::Block::m_isEdgeBlock
private

Definition at line 92 of file BlockOrder.h.

◆ m_isNodeBlock

bool ogdf::Block::m_isNodeBlock
private

Definition at line 93 of file BlockOrder.h.

◆ m_lower

int ogdf::Block::m_lower = 0
private

The bottom level of this block.

Definition at line 76 of file BlockOrder.h.

◆ m_NeighboursIncoming

Array<int> ogdf::Block::m_NeighboursIncoming
private

Indices of neighbouring incoming blocks.

Definition at line 80 of file BlockOrder.h.

◆ m_NeighboursOutgoing

Array<int> ogdf::Block::m_NeighboursOutgoing
private

Indices of neighbouring outgoing blocks.

Definition at line 84 of file BlockOrder.h.

◆ m_Node

node ogdf::Block::m_Node = nullptr
private

The node for which this block was created.

Definition at line 89 of file BlockOrder.h.

◆ m_nodes

Array<node> ogdf::Block::m_nodes
private

Vertices from the proper hierarchy corresponding to this block.

Definition at line 78 of file BlockOrder.h.

◆ m_upper

int ogdf::Block::m_upper = 0
private

The top level of this block.

Definition at line 74 of file BlockOrder.h.


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