Parasol Planning Library (PPL)
Decomposition Class Reference

#include <Decomposition.h>

Public Member Functions

Construction
 Decomposition ()
 
 Decomposition (std::shared_ptr< SemanticTask > _mainTask)
 
 Decomposition (XMLNode &_node, MPProblem *_problem)
 
 ~Decomposition ()
 
Accessors
const std::string GetLabel () const
 Return the label for the decomposition. More...
 
RobotGetCoordinator () const
 Return the robot responsible for the decomposition. More...
 
void SetCoordinator (Robot *_robot)
 
SemanticTaskGetRootTask ()
 Return the root task in the decomposition tree. More...
 
void SetRootTask (SemanticTask *_task)
 
void AddTask (std::shared_ptr< SemanticTask > _task)
 
SemanticTaskGetTask (std::string _label)
 
std::vector< SemanticTask * > & GetMotionTasks ()
 Return the set of tasks with corresponding motion tasks. More...
 
std::vector< SemanticTask * > & GetGroupMotionTasks ()
 
void AddMotionTask (SemanticTask *_task)
 
void AddGroupMotionTask (SemanticTask *_task)
 
const std::unordered_map< std::string, std::shared_ptr< SemanticTask > > & GetTaskMap () const
 Return the map of all semantic tasks in the decomposition. More...
 
void SetComplete (bool _complete=true)
 
bool IsComplete ()
 Checks if the decompsition has been marked complete. More...
 

Constructor & Destructor Documentation

◆ Decomposition() [1/3]

Decomposition::Decomposition ( )

◆ Decomposition() [2/3]

Decomposition::Decomposition ( std::shared_ptr< SemanticTask _mainTask)
Parameters
_mainTaskThe root task in the decomposition tree.

◆ Decomposition() [3/3]

Decomposition::Decomposition ( XMLNode _node,
MPProblem _problem 
)
Parameters
_nodeThe xml node containing the decomposition information.
_problemThe parent MPProblem that this decomposition belongs to.

◆ ~Decomposition()

Decomposition::~Decomposition ( )

Member Function Documentation

◆ AddGroupMotionTask()

void Decomposition::AddGroupMotionTask ( SemanticTask _task)

Add a semantic task to the set of tasks with group motion tasks.

Parameters
_taskTask with corresponding group motion task.

◆ AddMotionTask()

void Decomposition::AddMotionTask ( SemanticTask _task)

Add a semantic task to the set of tasks with motion tasks.

Parameters
_taskTask with corresponding motion task.

◆ AddTask()

void Decomposition::AddTask ( std::shared_ptr< SemanticTask _task)

Add a new task to the decomposition.

Parameters
_taskNew task to add to decomposition.

◆ GetCoordinator()

Robot * Decomposition::GetCoordinator ( ) const

Return the robot responsible for the decomposition.

◆ GetGroupMotionTasks()

std::vector< SemanticTask * > & Decomposition::GetGroupMotionTasks ( )

Return the set of tasks with corresponding group motion tasks.

◆ GetLabel()

const std::string Decomposition::GetLabel ( ) const

Return the label for the decomposition.

◆ GetMotionTasks()

std::vector< SemanticTask * > & Decomposition::GetMotionTasks ( )

Return the set of tasks with corresponding motion tasks.

◆ GetRootTask()

SemanticTask * Decomposition::GetRootTask ( )

Return the root task in the decomposition tree.

◆ GetTask()

SemanticTask * Decomposition::GetTask ( std::string  _label)

Return the named task from the decomposition.

Parameters
_labelLabel of desired task.

◆ GetTaskMap()

const std::unordered_map< std::string, std::shared_ptr< SemanticTask > > & Decomposition::GetTaskMap ( ) const

Return the map of all semantic tasks in the decomposition.

◆ IsComplete()

bool Decomposition::IsComplete ( )

Checks if the decompsition has been marked complete.

◆ SetComplete()

void Decomposition::SetComplete ( bool  _complete = true)

Marks the decomposition as (in)complete.

Parameters
_completeFlag indicating complete status.

◆ SetCoordinator()

void Decomposition::SetCoordinator ( Robot _robot)

Set the coordinator responsible for the decomposition.

Parameters
_robotThe new coordinator responsible for the decomposition.

◆ SetRootTask()

void Decomposition::SetRootTask ( SemanticTask _task)

Set the root task for the decomposition tree.

Parameters
_taskThe new root task in the decomp tree.

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