Peano
Loading...
Searching...
No Matches
peano4::parallel::SpacetreeSet::TraverseTask Class Reference

Each task triggers the traversal of one specific spacetree. More...

Inheritance diagram for peano4::parallel::SpacetreeSet::TraverseTask:
Collaboration diagram for peano4::parallel::SpacetreeSet::TraverseTask:

Public Member Functions

 TraverseTask (peano4::grid::Spacetree &tree, SpacetreeSet &set, peano4::grid::TraversalObserver &observer, bool invertTreeTraversalDirectionBeforeWeStart)
 
virtual bool run () override
 I create the copy of the observer, run the traversal on my local tree _spacetree and finally destroy the local observer copy.
 
- Public Member Functions inherited from tarch::multicore::Task
 Task (int taskType, int priority)
 Construct task.
 
virtual ~Task ()
 
int getTaskType () const
 
int getPriority () const
 
void setPriority (int priority)
 Set priority.
 
virtual bool canFuse () const
 
virtual bool fuse (const std::list< Task * > &otherTasks, int targetDevice=Host)
 Fuse multiple tasks.
 
virtual std::string toString () const
 

Private Attributes

peano4::grid::Spacetree_spacetree
 
SpacetreeSet_spacetreeSet
 
peano4::grid::TraversalObserver_observer
 
const bool _invertTreeTraversalDirectionBeforeWeStart
 

Additional Inherited Members

- Static Public Attributes inherited from tarch::multicore::Task
static constexpr int DefaultPriority = 1024
 
static constexpr int Host = -1
 
static constexpr int DontFuse = -1
 
- Protected Attributes inherited from tarch::multicore::Task
const int _taskType
 
int _priority
 

Detailed Description

Each task triggers the traversal of one specific spacetree.

After that, we might directly trigger the data exchanges. Yet, this is not a good idea as other tasks might linger in the background not have sent the data out yet. So we don't to anything here.

Definition at line 55 of file SpacetreeSet.h.

Constructor & Destructor Documentation

◆ TraverseTask()

peano4::parallel::SpacetreeSet::TraverseTask::TraverseTask ( peano4::grid::Spacetree & tree,
SpacetreeSet & set,
peano4::grid::TraversalObserver & observer,
bool invertTreeTraversalDirectionBeforeWeStart )

Definition at line 262 of file SpacetreeSet.cpp.

Member Function Documentation

◆ run()

bool peano4::parallel::SpacetreeSet::TraverseTask::run ( )
overridevirtual

I create the copy of the observer, run the traversal on my local tree _spacetree and finally destroy the local observer copy.

Implements tarch::multicore::Task.

Definition at line 274 of file SpacetreeSet.cpp.

Field Documentation

◆ _invertTreeTraversalDirectionBeforeWeStart

const bool peano4::parallel::SpacetreeSet::TraverseTask::_invertTreeTraversalDirectionBeforeWeStart
private

Definition at line 60 of file SpacetreeSet.h.

◆ _observer

peano4::grid::TraversalObserver& peano4::parallel::SpacetreeSet::TraverseTask::_observer
private

Definition at line 59 of file SpacetreeSet.h.

◆ _spacetree

peano4::grid::Spacetree& peano4::parallel::SpacetreeSet::TraverseTask::_spacetree
private

Definition at line 57 of file SpacetreeSet.h.

◆ _spacetreeSet

SpacetreeSet& peano4::parallel::SpacetreeSet::TraverseTask::_spacetreeSet
private

Definition at line 58 of file SpacetreeSet.h.


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