Public Types | Public Member Functions | Public Attributes | Protected Attributes
PradaPlannerAlgorithm Class Reference

IRI ROS Specific Driver Class. More...

#include <prada_planner_alg.h>

List of all members.

Public Types

typedef
iri_prada_planner::PradaPlannerConfig 
Config
 define config type

Public Member Functions

void config_update (Config &new_cfg, uint32_t level=0)
 config update
relational::LitL getCompletePlan (uint32_t plan_length)
uint32_t getRecommendedPlanLength (uint32_t ellipses_size)
 Gets the recommended plan length for PRADA planner.
relational::Literal * getSinglePlan (uint32_t plan_length)
void initializePlan ()
void lock (void)
 Lock Algorithm.
 PradaPlannerAlgorithm (void)
 constructor
void reloadRules ()
void setPlanStateFromFile ()
void setupPlanner (relational::SymbolicState *state)
bool try_enter (void)
 Tries Access to Algorithm.
void unlock (void)
 Unlock Algorithm.
 ~PradaPlannerAlgorithm (void)
 Destructor.

Public Attributes

Config config_
 config variable

Protected Attributes

CMutex alg_mutex_
 define config type
bool board_plan
std::string conf_file_language
std::string conf_file_reward
std::string conf_file_rules
std::string conf_file_state
int max_prada_horizon
relational::NID_Planner * planner
double prada_discount_factor
double prada_noise_softener
int prada_num_samples
relational::Reward * reward
relational::RuleSet * rules
relational::SymbolicState * state

Detailed Description

IRI ROS Specific Driver Class.

Definition at line 48 of file prada_planner_alg.h.


Member Typedef Documentation

typedef iri_prada_planner::PradaPlannerConfig PradaPlannerAlgorithm::Config

define config type

Define a Config type with the PradaPlannerConfig. All driver implementations will then use the same variable type Config.

Definition at line 84 of file prada_planner_alg.h.


Constructor & Destructor Documentation

constructor

In this constructor parameters related to the specific driver can be initalized. Those parameters can be also set in the openDriver() function. Attributes from the main node driver class IriBaseDriver such as loop_rate, may be also overload here.

Definition at line 3 of file prada_planner_alg.cpp.

Destructor.

This destructor is called when the object is about to be destroyed.

Definition at line 13 of file prada_planner_alg.cpp.


Member Function Documentation

void PradaPlannerAlgorithm::config_update ( Config new_cfg,
uint32_t  level = 0 
)

config update

In this function the driver parameters must be updated with the input config variable. Then the new configuration state will be stored in the Config attribute.

Parameters:
new_cfgthe new driver configuration state
levellevel in which the update is taken place

Definition at line 17 of file prada_planner_alg.cpp.

relational::LitL PradaPlannerAlgorithm::getCompletePlan ( uint32_t  plan_length)

Definition at line 183 of file prada_planner_alg.cpp.

uint32_t PradaPlannerAlgorithm::getRecommendedPlanLength ( uint32_t  ellipses_size)

Gets the recommended plan length for PRADA planner.

Gets the recommended plan length For cleaning a board is: Plan length is (#ellipses)^2 + 4 Information needed by PRADA Planner

For cleaning small objects is Plan length is (#ellipses) * 3 Information needed by PRADA Planner

Definition at line 200 of file prada_planner_alg.cpp.

relational::Literal * PradaPlannerAlgorithm::getSinglePlan ( uint32_t  plan_length)

Definition at line 160 of file prada_planner_alg.cpp.

Definition at line 60 of file prada_planner_alg.cpp.

void PradaPlannerAlgorithm::lock ( void  ) [inline]

Lock Algorithm.

Locks access to the Algorithm class

Definition at line 109 of file prada_planner_alg.h.

Definition at line 214 of file prada_planner_alg.cpp.

Definition at line 111 of file prada_planner_alg.cpp.

void PradaPlannerAlgorithm::setupPlanner ( relational::SymbolicState *  state)

Definition at line 130 of file prada_planner_alg.cpp.

Tries Access to Algorithm.

Tries access to Algorithm

Returns:
true if the lock was adquired, false otherwise

Definition at line 125 of file prada_planner_alg.h.

void PradaPlannerAlgorithm::unlock ( void  ) [inline]

Unlock Algorithm.

Unlocks access to the Algorithm class

Definition at line 116 of file prada_planner_alg.h.


Member Data Documentation

define config type

Define a Config type with the PradaPlannerConfig. All driver implementations will then use the same variable type Config.

Definition at line 57 of file prada_planner_alg.h.

Definition at line 70 of file prada_planner_alg.h.

Definition at line 67 of file prada_planner_alg.h.

std::string PradaPlannerAlgorithm::conf_file_reward [protected]

Definition at line 67 of file prada_planner_alg.h.

std::string PradaPlannerAlgorithm::conf_file_rules [protected]

Definition at line 67 of file prada_planner_alg.h.

std::string PradaPlannerAlgorithm::conf_file_state [protected]

Definition at line 67 of file prada_planner_alg.h.

config variable

This variable has all the driver parameters defined in the cfg config file. Is updated everytime function config_update() is called.

Definition at line 92 of file prada_planner_alg.h.

Definition at line 73 of file prada_planner_alg.h.

relational::NID_Planner* PradaPlannerAlgorithm::planner [protected]

Definition at line 63 of file prada_planner_alg.h.

Definition at line 74 of file prada_planner_alg.h.

Definition at line 74 of file prada_planner_alg.h.

Definition at line 73 of file prada_planner_alg.h.

relational::Reward* PradaPlannerAlgorithm::reward [protected]

Definition at line 62 of file prada_planner_alg.h.

relational::RuleSet* PradaPlannerAlgorithm::rules [protected]

Definition at line 60 of file prada_planner_alg.h.

relational::SymbolicState* PradaPlannerAlgorithm::state [protected]

Definition at line 64 of file prada_planner_alg.h.


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


iri_prada_planner
Author(s): dmartinez
autogenerated on Fri Dec 6 2013 23:36:33