 # OpenGraph DrawingFramework

v. 2022.02 (Dogwood)

ogdf::energybased::fmmm::Set Class Reference

Helping data structure that holds set S_node of nodes in the range [0, G.number_of_nodes()-1] (needed for class Multilevel) for randomly choosing nodes (with uniform or weighted probability!) More...

#include <ogdf/energybased/fmmm/Set.h>

## Public Member Functions

Set ()
constructor More...

~Set ()
destructor More...

void set_seed (int rand_seed)
the the random seed to rand_seed More...

for set of nodes @{
void init_node_set (Graph &G)
Inits S_node[0,...,G.number_of_nodes()-1] and stores the i-th node of P at position S_node[i] and in position_in_node_set for each node its index in S_node. More...

bool empty_node_set ()
Returns whether S_node is empty or not. More...

bool is_deleted (node v)
Returns true if and only if v is deleted from S_node. More...

void delete_node (node v)
Deletes the node v from S_node. More...

for set of nodes with uniform probability @{
node get_random_node ()
Selects a random element from S_node with uniform probability and updates S_node and position_in_node_set. More...

for set of nodes with weighted probability @{
void init_node_set (Graph &G, NodeArray< NodeAttributes > &A)
Same as init_node_set(G), but additionally the array mass_of_star is caculated. More...

for set of nodes with ‘lower mass’' probability @{
node get_random_node_with_lowest_star_mass (int rand_tries)
Gets rand_tries random elements from S_node and selects the one with the lowest mass_of_star and updates S_node and position_in_node_set. More...

for set of nodes with ‘higher mass’' probability @{
node get_random_node_with_highest_star_mass (int rand_tries)
Gets rand_tries random elements from S_node and selects the one with the highest mass_of_star and updates S_node and position_in_node_set. More...

## Protected Member Functions

node get_random_node_common (int, int &)
Common updates for each get_random_node method. More...

template<typename Comp >
node get_random_node_with_some_star_mass (int rand_tries, Comp comp=Comp())
Helper function for get_random_node methods with lowest or highest star mass. More...

## Private Attributes

int last_selectable_index_of_S_node
index of the last randomly choosable element in S_node (this value is decreased after each select operation) More...

NodeArray< int > mass_of_star
the sum of the masses of a node and its neighbours More...

NodeArray< int > position_in_node_set
holds for each node of G the index of its position in S_node More...

nodeS_node
representation of the node set S_node[0,G.number_of_nodes()-1] More...

## Detailed Description

Helping data structure that holds set S_node of nodes in the range [0, G.number_of_nodes()-1] (needed for class Multilevel) for randomly choosing nodes (with uniform or weighted probability!)

Definition at line 46 of file Set.h.

## ◆ Set()

 ogdf::energybased::fmmm::Set::Set ( )

constructor

## ◆ ~Set()

 ogdf::energybased::fmmm::Set::~Set ( )

destructor

## ◆ delete_node()

 void ogdf::energybased::fmmm::Set::delete_node ( node v )

Deletes the node v from S_node.

## ◆ empty_node_set()

 bool ogdf::energybased::fmmm::Set::empty_node_set ( )
inline

Returns whether S_node is empty or not.

Definition at line 63 of file Set.h.

## ◆ get_random_node()

 node ogdf::energybased::fmmm::Set::get_random_node ( )

Selects a random element from S_node with uniform probability and updates S_node and position_in_node_set.

## ◆ get_random_node_common()

 node ogdf::energybased::fmmm::Set::get_random_node_common ( int , int & )
protected

Common updates for each get_random_node method.

## ◆ get_random_node_with_highest_star_mass()

 node ogdf::energybased::fmmm::Set::get_random_node_with_highest_star_mass ( int rand_tries )

Gets rand_tries random elements from S_node and selects the one with the highest mass_of_star and updates S_node and position_in_node_set.

## ◆ get_random_node_with_lowest_star_mass()

 node ogdf::energybased::fmmm::Set::get_random_node_with_lowest_star_mass ( int rand_tries )

Gets rand_tries random elements from S_node and selects the one with the lowest mass_of_star and updates S_node and position_in_node_set.

## ◆ get_random_node_with_some_star_mass()

template<typename Comp >
 node ogdf::energybased::fmmm::Set::get_random_node_with_some_star_mass ( int rand_tries, Comp comp = Comp() )
protected

Helper function for get_random_node methods with lowest or highest star mass.

## ◆ init_node_set() [1/2]

 void ogdf::energybased::fmmm::Set::init_node_set ( Graph & G )

Inits S_node[0,...,G.number_of_nodes()-1] and stores the i-th node of P at position S_node[i] and in position_in_node_set for each node its index in S_node.

## ◆ init_node_set() [2/2]

 void ogdf::energybased::fmmm::Set::init_node_set ( Graph & G, NodeArray< NodeAttributes > & A )

Same as init_node_set(G), but additionally the array mass_of_star is caculated.

## ◆ is_deleted()

 bool ogdf::energybased::fmmm::Set::is_deleted ( node v )
inline

Returns true if and only if v is deleted from S_node.

Definition at line 68 of file Set.h.

## ◆ set_seed()

 void ogdf::energybased::fmmm::Set::set_seed ( int rand_seed )

the the random seed to rand_seed

## ◆ last_selectable_index_of_S_node

 int ogdf::energybased::fmmm::Set::last_selectable_index_of_S_node
private

index of the last randomly choosable element in S_node (this value is decreased after each select operation)

Definition at line 114 of file Set.h.

## ◆ mass_of_star

 NodeArray ogdf::energybased::fmmm::Set::mass_of_star
private

the sum of the masses of a node and its neighbours

Definition at line 119 of file Set.h.

## ◆ position_in_node_set

 NodeArray ogdf::energybased::fmmm::Set::position_in_node_set
private

holds for each node of G the index of its position in S_node

Definition at line 117 of file Set.h.

## ◆ S_node

 node* ogdf::energybased::fmmm::Set::S_node
private

representation of the node set S_node[0,G.number_of_nodes()-1]

Definition at line 113 of file Set.h.

The documentation for this class was generated from the following file:
• include/ogdf/energybased/fmmm/Set.h