SCL  1.0
Standard Control Library : Control, dynamics, physics, and simulation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Groups Pages
Public Member Functions | Public Attributes | List of all members
scl::SControllerData Class Reference

#include <SDatabase.hpp>

Collaboration diagram for scl::SControllerData:
Collaboration graph
[legend]

Public Member Functions

sBool getControllersForRobot (const std::string &arg_robot, std::vector< SControllerBase * > &ret_controllers)
 

Public Attributes

sutil::CMappedPointerList
< std::string, SControllerBase,
true > 
controllers_
 
sutil::CMappedPointerList
< std::string, STaskBase, true > 
tasks_
 
sutil::CMappedPointerList
< std::string,
SNonControlTaskBase, true > 
tasks_non_ctrl_
 

Detailed Description

All the data updated by the controller

Controller robots - Atleast one controller for each robot. Multiple tasks for each controller (in a hierarchy)

No controller can exist unless its robot is defined by the parser.

NOTE : SRobotParsed is the statically loaded robot information while SCrRobot contains the information about the robot that the controller dynamically generates (eg. matrices)

Each controller has : SRobotParsed + SCrRobot

Supports twofold robot lookup:

  1. Based on the static robot data (Useful if iterating through parsed robot data stored in SParserData)
  2. Based on the robot's name

Member Function Documentation

sBool scl::SControllerData::getControllersForRobot ( const std::string &  arg_robot,
std::vector< SControllerBase * > &  ret_controllers 
)
inline

Returns all the controllers initialized for a specific robot

Member Data Documentation

sutil::CMappedPointerList<std::string,SControllerBase, true> scl::SControllerData::controllers_

Enables string access for controller data. NOTE : Each controller is stored along with it's name in a pilemap.

A mapped pointer list so that it can manage memory for subclasses as well (by storing and later deleting their pointers, instead of allocating and storing objects themselves).

sutil::CMappedPointerList<std::string,STaskBase, true> scl::SControllerData::tasks_

Enables string access for controller task data. Each task is stored along with its type as a std::pair. A mapped pointer list so that it can manage memory for subclasses as well (by storing and later deleting their pointers, instead of allocating and storing objects themselves).

sutil::CMappedPointerList<std::string,SNonControlTaskBase, true> scl::SControllerData::tasks_non_ctrl_

Enables string access for non-controller task data. Each task is stored along with its type as a std::pair. A mapped pointer list so that it can manage memory for subclasses as well (by storing and later deleting their pointers, instead of allocating and storing objects themselves).


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