Fréchet View  1.6.0
A Tool for Exploring Fréchet Distance Algorithms
frechet::reach::StructureTask Class Referenceabstract

Detailed Description

task object for parallel execution. When the reachability structur is computed in parallel threads, we create a tree of task objects that are distributed over threads.

Workflow and dependencies between tasks are managed by a tbb::flow::graph.

Definition at line 553 of file structure.h.

#include <structure.h>

Inherited by frechet::reach::CalculateTask, and frechet::reach::MergeTask.

Public Types

typedef tbb::flow::continue_msg msg_t
 used to connect nodes in the dependency graph More...
 
typedef tbb::flow::continue_node< msg_tnode_t
 a node in the dependency graph More...
 

Public Member Functions

 StructureTask (Structure *owner)
 constructor with Structure More...
 
virtual ~StructureTask ()
 destructor More...
 
virtual void start ()=0
 abstract method for starting a task More...
 

Static Public Member Functions

static StructureTaskcreateTask (Structure *owner, const frechet::Rect &r, tbb::flow::graph &graph, int concurrency)
 static constructor More...
 

Public Attributes

Structureowner
 the underlying reachability structure More...
 
node_tnode
 a node in the dependency graph More...
 

Member Typedef Documentation

◆ msg_t

typedef tbb::flow::continue_msg frechet::reach::StructureTask::msg_t

used to connect nodes in the dependency graph

Definition at line 581 of file structure.h.

◆ node_t

typedef tbb::flow::continue_node<msg_t> frechet::reach::StructureTask::node_t

a node in the dependency graph

Definition at line 583 of file structure.h.

Constructor & Destructor Documentation

◆ StructureTask()

StructureTask::StructureTask ( Structure owner)

constructor with Structure

Parameters
ownerthe underlying reachability structure

Definition at line 296 of file structure.cpp.

◆ ~StructureTask()

StructureTask::~StructureTask ( )
virtual

destructor

Definition at line 300 of file structure.cpp.

Member Function Documentation

◆ createTask()

StructureTask * StructureTask::createTask ( Structure owner,
const frechet::Rect r,
tbb::flow::graph &  graph,
int  concurrency 
)
static

static constructor

Parameters
ownerthe underlying reachability structure
rbounding region (columns and rows in free-space)
graphtbb flow-graph modeling tasks and dependencies
concurrencynumber of threads to use
Returns
a newly created task, with all dependecies

Definition at line 304 of file structure.cpp.

◆ start()

virtual void frechet::reach::StructureTask::start ( )
pure virtual

abstract method for starting a task

Implemented in frechet::reach::MergeTask, and frechet::reach::CalculateTask.

Member Data Documentation

◆ node

node_t* frechet::reach::StructureTask::node

a node in the dependency graph

Definition at line 588 of file structure.h.

◆ owner

Structure* frechet::reach::StructureTask::owner

the underlying reachability structure

Definition at line 586 of file structure.h.


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