Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

ogdf::PlanarSubgraphFast< TCost >::ThreadMaster Class Reference

Public Member Functions

 ThreadMaster (const Array< BlockType > &block, const EdgeArray< TCost > *pCost, int runs)
 
const Graphblock (int i) const
 
void buildSolution (List< edge > &delEdges)
 
bool considerBlock (int i) const
 
bool getNextRun ()
 
int numBlocks () const
 
List< edge > * postNewResult (int i, List< edge > *pNewDelEdges)
 

Private Attributes

Array< List< edge > * > m_bestDelEdges
 best solution for block More...
 
Array< TCost > m_bestSolution
 value of best solution for block More...
 
const Array< BlockType > & m_block
 the blocks (graph and edge mapping) More...
 
std::mutex m_mutex
 thread synchronization More...
 
int m_nBlocks
 number of blocks More...
 
const EdgeArray< TCost > * m_pCost
 edge cost (may be 0) More...
 
std::atomic< int > m_runs
 

Detailed Description

template<typename TCost>
class ogdf::PlanarSubgraphFast< TCost >::ThreadMaster

Definition at line 72 of file PlanarSubgraphFast.h.

Constructor & Destructor Documentation

◆ ThreadMaster()

template<typename TCost >
ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::ThreadMaster ( const Array< BlockType > &  block,
const EdgeArray< TCost > *  pCost,
int  runs 
)
inline

Definition at line 82 of file PlanarSubgraphFast.h.

Member Function Documentation

◆ block()

template<typename TCost >
const Graph& ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::block ( int  i) const
inline

Definition at line 98 of file PlanarSubgraphFast.h.

◆ buildSolution()

template<typename TCost >
void ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::buildSolution ( List< edge > &  delEdges)
inline

Definition at line 125 of file PlanarSubgraphFast.h.

◆ considerBlock()

template<typename TCost >
bool ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::considerBlock ( int  i) const
inline

Definition at line 100 of file PlanarSubgraphFast.h.

◆ getNextRun()

template<typename TCost >
bool ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::getNextRun ( )
inline

Definition at line 137 of file PlanarSubgraphFast.h.

◆ numBlocks()

template<typename TCost >
int ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::numBlocks ( ) const
inline

Definition at line 96 of file PlanarSubgraphFast.h.

◆ postNewResult()

template<typename TCost >
List<edge>* ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::postNewResult ( int  i,
List< edge > *  pNewDelEdges 
)
inline

Definition at line 102 of file PlanarSubgraphFast.h.

Member Data Documentation

◆ m_bestDelEdges

template<typename TCost >
Array<List<edge>*> ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::m_bestDelEdges
private

best solution for block

Definition at line 74 of file PlanarSubgraphFast.h.

◆ m_bestSolution

template<typename TCost >
Array<TCost> ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::m_bestSolution
private

value of best solution for block

Definition at line 73 of file PlanarSubgraphFast.h.

◆ m_block

template<typename TCost >
const Array<BlockType>& ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::m_block
private

the blocks (graph and edge mapping)

Definition at line 76 of file PlanarSubgraphFast.h.

◆ m_mutex

template<typename TCost >
std::mutex ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::m_mutex
private

thread synchronization

Definition at line 79 of file PlanarSubgraphFast.h.

◆ m_nBlocks

template<typename TCost >
int ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::m_nBlocks
private

number of blocks

Definition at line 75 of file PlanarSubgraphFast.h.

◆ m_pCost

template<typename TCost >
const EdgeArray<TCost>* ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::m_pCost
private

edge cost (may be 0)

Definition at line 77 of file PlanarSubgraphFast.h.

◆ m_runs

template<typename TCost >
std::atomic<int> ogdf::PlanarSubgraphFast< TCost >::ThreadMaster::m_runs
private

Definition at line 78 of file PlanarSubgraphFast.h.


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