RcsPySim
A robot control and simulation library
Rcs::PolicyComponent Class Reference

#include <PolicyComponent.h>

Inheritance diagram for Rcs::PolicyComponent:
Collaboration diagram for Rcs::PolicyComponent:

Public Member Functions

 PolicyComponent (EntityBase *entity, PropertySource *settings, bool computeJointVelocities=false)
 
virtual ~PolicyComponent ()
 
 RCSPYSIM_NOCOPY_NOMOVE (PolicyComponent) ExperimentConfig *getExperiment() const
 
ControlPolicygetPolicy () const
 
const MatNd * getObservation () const
 
const MatNd * getAction () const
 
const MatNd * getJointCommandPtr () const
 
RcsGraph * getDesiredGraph () const
 
std::string getStateText () const
 
void setJointLimitCheck (bool jointLimitCheck)
 
void setCollisionCheck (bool collisionCheck)
 

Private Member Functions

void subscribe ()
 
void onUpdatePolicy (const RcsGraph *state)
 
void onInitFromState (const RcsGraph *target)
 
void onEmergencyStop ()
 
void onEmergencyRecover ()
 
void onRender ()
 
void onPrint ()
 
void onPolicyStart ()
 
void onPolicyPause ()
 
void onPolicyReset ()
 
void onGoHome ()
 

Private Attributes

ExperimentConfigexperiment
 
ControlPolicypolicy
 
bool computeJointVelocities
 
bool jointLimitCheck
 
bool collisionCheck
 
RcsCollisionMdl * collisionMdl
 
bool policyActive
 
bool eStop
 
bool eRec
 
bool renderingInitialized
 
MatNd * observation
 
MatNd * action
 
RcsGraph * desiredGraph
 
bool goHome
 
DynamicalSystemgoHomeDS
 
ActionModelgoHomeAM
 
MatNd * T_ctrl
 

Detailed Description

Wraps RcsPySim Experiment and ControlPolicy for use in ECS.

Definition at line 49 of file PolicyComponent.h.

Constructor & Destructor Documentation

◆ PolicyComponent()

Rcs::PolicyComponent::PolicyComponent ( EntityBase *  entity,
PropertySource settings,
bool  computeJointVelocities = false 
)

Definition at line 48 of file PolicyComponent.cpp.

◆ ~PolicyComponent()

Rcs::PolicyComponent::~PolicyComponent ( )
virtual

Definition at line 151 of file PolicyComponent.cpp.

Member Function Documentation

◆ getAction()

const MatNd * Rcs::PolicyComponent::getAction ( ) const

Definition at line 413 of file PolicyComponent.cpp.

◆ getDesiredGraph()

RcsGraph * Rcs::PolicyComponent::getDesiredGraph ( ) const

Definition at line 423 of file PolicyComponent.cpp.

◆ getJointCommandPtr()

const MatNd * Rcs::PolicyComponent::getJointCommandPtr ( ) const

Definition at line 418 of file PolicyComponent.cpp.

◆ getObservation()

const MatNd * Rcs::PolicyComponent::getObservation ( ) const

Definition at line 408 of file PolicyComponent.cpp.

◆ getPolicy()

Rcs::ControlPolicy * Rcs::PolicyComponent::getPolicy ( ) const

Definition at line 403 of file PolicyComponent.cpp.

◆ getStateText()

std::string Rcs::PolicyComponent::getStateText ( ) const

Definition at line 376 of file PolicyComponent.cpp.

◆ onEmergencyRecover()

void Rcs::PolicyComponent::onEmergencyRecover ( )
private

Definition at line 306 of file PolicyComponent.cpp.

◆ onEmergencyStop()

void Rcs::PolicyComponent::onEmergencyStop ( )
private

Definition at line 298 of file PolicyComponent.cpp.

◆ onGoHome()

void Rcs::PolicyComponent::onGoHome ( )
private

Definition at line 344 of file PolicyComponent.cpp.

◆ onInitFromState()

void Rcs::PolicyComponent::onInitFromState ( const RcsGraph *  target)
private

Definition at line 274 of file PolicyComponent.cpp.

◆ onPolicyPause()

void Rcs::PolicyComponent::onPolicyPause ( )
private

Definition at line 333 of file PolicyComponent.cpp.

◆ onPolicyReset()

void Rcs::PolicyComponent::onPolicyReset ( )
private

Definition at line 339 of file PolicyComponent.cpp.

◆ onPolicyStart()

void Rcs::PolicyComponent::onPolicyStart ( )
private

Definition at line 317 of file PolicyComponent.cpp.

◆ onPrint()

void Rcs::PolicyComponent::onPrint ( )
private

Definition at line 392 of file PolicyComponent.cpp.

◆ onRender()

void Rcs::PolicyComponent::onRender ( )
private

Definition at line 360 of file PolicyComponent.cpp.

◆ onUpdatePolicy()

void Rcs::PolicyComponent::onUpdatePolicy ( const RcsGraph *  state)
private

Definition at line 186 of file PolicyComponent.cpp.

◆ RCSPYSIM_NOCOPY_NOMOVE()

Rcs::PolicyComponent::RCSPYSIM_NOCOPY_NOMOVE ( PolicyComponent  ) const

◆ setCollisionCheck()

void Rcs::PolicyComponent::setCollisionCheck ( bool  collisionCheck)

Definition at line 433 of file PolicyComponent.cpp.

◆ setJointLimitCheck()

void Rcs::PolicyComponent::setJointLimitCheck ( bool  jointLimitCheck)

Definition at line 428 of file PolicyComponent.cpp.

◆ subscribe()

void Rcs::PolicyComponent::subscribe ( )
private

Definition at line 171 of file PolicyComponent.cpp.

Member Data Documentation

◆ action

MatNd* Rcs::PolicyComponent::action
private

Definition at line 133 of file PolicyComponent.h.

◆ collisionCheck

bool Rcs::PolicyComponent::collisionCheck
private

Definition at line 116 of file PolicyComponent.h.

◆ collisionMdl

RcsCollisionMdl* Rcs::PolicyComponent::collisionMdl
private

Definition at line 119 of file PolicyComponent.h.

◆ computeJointVelocities

bool Rcs::PolicyComponent::computeJointVelocities
private

Definition at line 111 of file PolicyComponent.h.

◆ desiredGraph

RcsGraph* Rcs::PolicyComponent::desiredGraph
private

Definition at line 136 of file PolicyComponent.h.

◆ eRec

bool Rcs::PolicyComponent::eRec
private

Definition at line 126 of file PolicyComponent.h.

◆ eStop

bool Rcs::PolicyComponent::eStop
private

Definition at line 124 of file PolicyComponent.h.

◆ experiment

ExperimentConfig* Rcs::PolicyComponent::experiment
private

Definition at line 106 of file PolicyComponent.h.

◆ goHome

bool Rcs::PolicyComponent::goHome
private

Definition at line 139 of file PolicyComponent.h.

◆ goHomeAM

ActionModel* Rcs::PolicyComponent::goHomeAM
private

Definition at line 141 of file PolicyComponent.h.

◆ goHomeDS

DynamicalSystem* Rcs::PolicyComponent::goHomeDS
private

Definition at line 140 of file PolicyComponent.h.

◆ jointLimitCheck

bool Rcs::PolicyComponent::jointLimitCheck
private

Definition at line 114 of file PolicyComponent.h.

◆ observation

MatNd* Rcs::PolicyComponent::observation
private

Definition at line 132 of file PolicyComponent.h.

◆ policy

ControlPolicy* Rcs::PolicyComponent::policy
private

Definition at line 108 of file PolicyComponent.h.

◆ policyActive

bool Rcs::PolicyComponent::policyActive
private

Definition at line 122 of file PolicyComponent.h.

◆ renderingInitialized

bool Rcs::PolicyComponent::renderingInitialized
private

Definition at line 128 of file PolicyComponent.h.

◆ T_ctrl

MatNd* Rcs::PolicyComponent::T_ctrl
private

Definition at line 144 of file PolicyComponent.h.


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