#include <OMTaskPositions.h>
|
void | initTaskBodyNames (const char *effectorName, const char *refBodyName, const char *refFrameName) |
|
ObservationModel wrapping a Rcs Task.
Note: In contrast to OMTask, this ObservationModel only observes the task space positions called X.
Definition at line 46 of file OMTaskPositions.h.
◆ OMTaskPositions() [1/3]
Rcs::OMTaskPositions::OMTaskPositions |
( |
Task * |
task | ) |
|
Wrap the given task. Takes ownership of the task object.
Definition at line 42 of file OMTaskPositions.cpp.
◆ ~OMTaskPositions()
Rcs::OMTaskPositions::~OMTaskPositions |
( |
| ) |
|
|
virtual |
◆ OMTaskPositions() [2/3]
◆ OMTaskPositions() [3/3]
◆ computeObservation()
void Rcs::OMTaskPositions::computeObservation |
( |
double * |
state, |
|
|
double * |
velocity, |
|
|
const MatNd * |
currentAction, |
|
|
double |
dt |
|
) |
| const |
|
virtual |
Implement to fill the observation vector with the observed values.
- Parameters
-
[out] | state | state observation vector to fill, has getStateDim() elements. |
[out] | velocity | velocity observation vector to fill, has getVelocityDim() elements. |
[in] | currentAction | action in current step. May be NULL if not available. |
[in] | dt | time step since the last observation has been taken |
Implements Rcs::ObservationModel.
Definition at line 59 of file OMTaskPositions.cpp.
◆ getLimits()
void Rcs::OMTaskPositions::getLimits |
( |
double * |
minState, |
|
|
double * |
maxState, |
|
|
double * |
maxVelocity |
|
) |
| const |
|
virtual |
Provides the minimum and maximum observable values. Since the velocity is symmetric, only the maximum needs to be provided. The default implementation uses -inf and inf.
- Parameters
-
[out] | minState | minimum state vector to fill, has getStateDim() elements. |
[out] | maxState | maximum state vector to fill, has getStateDim() elements. |
[out] | maxVelocity | maximum velocity vector to fill, has getVelocityDim() elements. |
Reimplemented from Rcs::ObservationModel.
Definition at line 64 of file OMTaskPositions.cpp.
◆ getStateDim()
unsigned int Rcs::OMTaskPositions::getStateDim |
( |
| ) |
const |
|
virtual |
◆ getStateNames()
std::vector< std::string > Rcs::OMTaskPositions::getStateNames |
( |
| ) |
const |
|
virtual |
◆ getTask()
Task* Rcs::OMTaskPositions::getTask |
( |
| ) |
const |
|
inline |
◆ getVelocityDim()
unsigned int Rcs::OMTaskPositions::getVelocityDim |
( |
| ) |
const |
|
virtual |
◆ initTaskBodyNames()
void Rcs::OMTaskPositions::initTaskBodyNames |
( |
const char * |
effectorName, |
|
|
const char * |
refBodyName, |
|
|
const char * |
refFrameName |
|
) |
| |
|
protected |
Initialize the task's effector, refBody and refFrame values by looking up the named bodies from the graph.
- Parameters
-
effectorName | Name of effector body, a.k.a. the body controlled by the task. |
refBodyName | Name of reference body, a.k.a. the body the task coordinates should be relative to. Set to NULL to use the world origin. |
refFrameName | Name of the reference frame body. The task coordinates will be expressed in this body's frame if set. If this is NULL, refBodyName will be used. |
Definition at line 129 of file OMTaskPositions.cpp.
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ setMaxState() [1/2]
Set the upper state limit, broadcasting one value to all elements.
Definition at line 112 of file OMTaskPositions.cpp.
◆ setMaxState() [2/2]
OMTaskPositions * Rcs::OMTaskPositions::setMaxState |
( |
std::vector< double > |
maxState | ) |
|
Set the upper state limit. The number of elements must match the state dimension.
Definition at line 120 of file OMTaskPositions.cpp.
◆ setMinState() [1/2]
Set the lower state limit, broadcasting one value to all elements.
Definition at line 95 of file OMTaskPositions.cpp.
◆ setMinState() [2/2]
OMTaskPositions * Rcs::OMTaskPositions::setMinState |
( |
std::vector< double > |
minState | ) |
|
Set the lower state limit. The number of elements must match the state dimension.
Definition at line 103 of file OMTaskPositions.cpp.
◆ task
Task* Rcs::OMTaskPositions::task |
|
private |
The documentation for this class was generated from the following files: