orogen-wbc
wbc::RbsToCartesianStateTask Class Reference

The task context provides and requires services. It uses an ExecutionEngine to perform its functions. Essential interfaces are operations, data flow ports and properties. These interfaces have been defined using the oroGen specification. In order to modify the interfaces you should (re)use oroGen and rely on the associated workflow. More...

#include <RbsToCartesianStateTask.hpp>

Inheritance diagram for wbc::RbsToCartesianStateTask:

Public Member Functions

 RbsToCartesianStateTask (std::string const &name="wbc::RbsToCartesianStateTask")
 
 ~RbsToCartesianStateTask ()
 
bool configureHook ()
 
bool startHook ()
 
void updateHook ()
 
void errorHook ()
 
void stopHook ()
 
void cleanupHook ()
 

Protected Types

typedef RTT::InputPort< base::samples::RigidBodyState > RbsInputPort
 
typedef std::shared_ptr< RTT::InputPort< base::samples::RigidBodyState > > RbsInputPortPtr
 
typedef RTT::OutputPort< base::samples::RigidBodyStateSE3 > CartesianStateOutputPort
 
typedef std::shared_ptr< RTT::OutputPort< base::samples::RigidBodyStateSE3 > > CartesianStateOutputPortPtr
 
typedef std::map< std::string, RbsInputPortPtrRbsInputPortMap
 
typedef std::map< std::string, CartesianStateOutputPortPtrCartesianStateOutputPortMap
 

Protected Member Functions

base::samples::RigidBodyStateSE3 fromRigidBodyState (const base::samples::RigidBodyState &in)
 

Protected Attributes

RbsInputPortMap input_port_map
 
CartesianStateOutputPortMap output_port_map
 

Friends

class RbsToCartesianStateTaskBase
 

Detailed Description

The task context provides and requires services. It uses an ExecutionEngine to perform its functions. Essential interfaces are operations, data flow ports and properties. These interfaces have been defined using the oroGen specification. In order to modify the interfaces you should (re)use oroGen and rely on the associated workflow.

Convert samples of type base/samples/CartesianState to type base/samples/RigidBodyState and vice versa

   \details
   The name of a TaskContext is primarily defined via:
 \verbatim
 deployment 'deployment_name'
     task('custom_task_name','wbc::RbsToCartesianStateTask')
 end
 \endverbatim
    It can be dynamically adapted when the deployment is called with a prefix argument.

Member Typedef Documentation

◆ CartesianStateOutputPort

typedef RTT::OutputPort<base::samples::RigidBodyStateSE3> wbc::RbsToCartesianStateTask::CartesianStateOutputPort
protected

◆ CartesianStateOutputPortMap

◆ CartesianStateOutputPortPtr

typedef std::shared_ptr< RTT::OutputPort<base::samples::RigidBodyStateSE3> > wbc::RbsToCartesianStateTask::CartesianStateOutputPortPtr
protected

◆ RbsInputPort

typedef RTT::InputPort<base::samples::RigidBodyState> wbc::RbsToCartesianStateTask::RbsInputPort
protected

◆ RbsInputPortMap

typedef std::map<std::string, RbsInputPortPtr> wbc::RbsToCartesianStateTask::RbsInputPortMap
protected

◆ RbsInputPortPtr

typedef std::shared_ptr< RTT::InputPort<base::samples::RigidBodyState> > wbc::RbsToCartesianStateTask::RbsInputPortPtr
protected

Constructor & Destructor Documentation

◆ RbsToCartesianStateTask()

RbsToCartesianStateTask::RbsToCartesianStateTask ( std::string const & name = "wbc::RbsToCartesianStateTask")

TaskContext constructor for RbsToCartesianStateTask

Parameters
nameName of the task. This name needs to be unique to make it identifiable via nameservices.
initial_stateThe initial TaskState of the TaskContext. Default is Stopped state.

◆ ~RbsToCartesianStateTask()

RbsToCartesianStateTask::~RbsToCartesianStateTask ( )

Default deconstructor of RbsToCartesianStateTask

Member Function Documentation

◆ cleanupHook()

void RbsToCartesianStateTask::cleanupHook ( )

This hook is called by Orocos when the state machine transitions from Stopped to PreOperational, requiring the call to configureHook() before calling start() again.

◆ configureHook()

bool RbsToCartesianStateTask::configureHook ( )

This hook is called by Orocos when the state machine transitions from PreOperational to Stopped. If it returns false, then the component will stay in PreOperational. Otherwise, it goes into Stopped.

It is meaningful only if the #needs_configuration has been specified in the task context definition with (for example):

task_context "TaskName" do
  needs_configuration
  ...
end

◆ errorHook()

void RbsToCartesianStateTask::errorHook ( )

This hook is called by Orocos when the component is in the RunTimeError state, at each activity step. See the discussion in updateHook() about triggering options.

Call recover() to go back in the Runtime state.

◆ fromRigidBodyState()

base::samples::RigidBodyStateSE3 RbsToCartesianStateTask::fromRigidBodyState ( const base::samples::RigidBodyState & in)
protected

◆ startHook()

bool RbsToCartesianStateTask::startHook ( )

This hook is called by Orocos when the state machine transitions from Stopped to Running. If it returns false, then the component will stay in Stopped. Otherwise, it goes into Running and updateHook() will be called.

◆ stopHook()

void RbsToCartesianStateTask::stopHook ( )

This hook is called by Orocos when the state machine transitions from Running to Stopped after stop() has been called.

◆ updateHook()

void RbsToCartesianStateTask::updateHook ( )

This hook is called by Orocos when the component is in the Running state, at each activity step. Here, the activity gives the "ticks" when the hook should be called.

The error(), exception() and fatal() calls, when called in this hook, allow to get into the associated RunTimeError, Exception and FatalError states.

In the first case, updateHook() is still called, and recover() allows you to go back into the Running state. In the second case, the errorHook() will be called instead of updateHook(). In Exception, the component is stopped and recover() needs to be called before starting it again. Finally, FatalError cannot be recovered.

Friends And Related Symbol Documentation

◆ RbsToCartesianStateTaskBase

friend class RbsToCartesianStateTaskBase
friend

Member Data Documentation

◆ input_port_map

RbsInputPortMap wbc::RbsToCartesianStateTask::input_port_map
protected

◆ output_port_map

CartesianStateOutputPortMap wbc::RbsToCartesianStateTask::output_port_map
protected

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