PPL Logo

SpanningTreeGenerator< Iterator > Class Template Reference

Abstract class (interface) to generate a spanning tree from a set of pes or logical (Charm++) nodes. More...

#include <spanningTree.h>

Inheritance diagram for SpanningTreeGenerator< Iterator >:

Inheritance graph
[legend]

Public Member Functions

virtual int buildSpanningTree (Iterator start, Iterator end, unsigned int maxBranches)=0
 Given a range of nodes (with root in first position), calculates the children of root (and their corresponding subtree).
virtual int subtreeSize (int subtree)=0
 return number of nodes in generated subtree (includes root of subtree)
virtual Iterator begin (int subtree)=0
 return Iterator to first node in generated subtree (i.e. root of subtree)
virtual Iterator end (int subtree)=0
 return Iterator to end of generated subtree

Detailed Description

template<typename Iterator>
class SpanningTreeGenerator< Iterator >

Abstract class (interface) to generate a spanning tree from a set of pes or logical (Charm++) nodes.

These will be referred to simply as nodes, physical nodes will be referred to as phynodes.

Definition at line 48 of file spanningTree.h.


Member Function Documentation

template<typename Iterator>
virtual int SpanningTreeGenerator< Iterator >::buildSpanningTree ( Iterator  start,
Iterator  end,
unsigned int  maxBranches 
) [pure virtual]

Given a range of nodes (with root in first position), calculates the children of root (and their corresponding subtree).

Tree algorithm will reorganize nodes inside the range, so that they are grouped by subtree. Use below methods to access the results.

Parameters:
start Iterator to beginning of node range
end Iterator to end of node range
maxBranches Max number of children the root should have
Note:
Each algorithm can interpret this differently.
Returns:
number of children of root generated by algorithm

Implemented in ST_RecursivePartition< Iterator >.

template<typename Iterator>
virtual int SpanningTreeGenerator< Iterator >::subtreeSize ( int  subtree  )  [pure virtual]

return number of nodes in generated subtree (includes root of subtree)

Implemented in ST_RecursivePartition< Iterator >.

template<typename Iterator>
virtual Iterator SpanningTreeGenerator< Iterator >::begin ( int  subtree  )  [pure virtual]

return Iterator to first node in generated subtree (i.e. root of subtree)

Implemented in ST_RecursivePartition< Iterator >.

template<typename Iterator>
virtual Iterator SpanningTreeGenerator< Iterator >::end ( int  subtree  )  [pure virtual]

return Iterator to end of generated subtree

Implemented in ST_RecursivePartition< Iterator >.


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

Generated on Mon Sep 21 08:29:58 2020 for Charm++ by  doxygen 1.5.5