4#include <VirtualRobot/VirtualRobot.h>
8#include <armarx/control/njoint_controller/joint_space/ControllerInterface.h>
12 class ControlTarget1DoFActuatorZeroTorque;
13 class ControlTarget1DoFActuatorZeroVelocity;
31 using ConfigPtrT = NJointZeroTorqueOrVelocityControllerConfigPtr;
34 const NJointZeroTorqueOrVelocityControllerConfigPtr& config,
38 std::string
getClassName(
const Ice::Current&)
const override;
43 void rtRun(
const IceUtil::Time& sensorValuesTimestamp,
44 const IceUtil::Time& timeSinceLastIteration)
override;
50 const std::map<std::string, ConstControlDevicePtr>&,
51 const std::map<std::string, ConstSensorDevicePtr>&);
53 static NJointZeroTorqueOrVelocityControllerConfigPtr
61 std::vector<ControlTarget1DoFActuatorZeroVelocity*>
targetsVel;
62 float maxTorque = std::numeric_limits<float>::max();
#define TYPEDEF_PTRS_HANDLE(T)
NJointControllerWithTripleBuffer(const NJointZeroTorqueOrVelocityControllerTarget &initialCommands=NJointZeroTorqueOrVelocityControllerTarget())
static WidgetDescription::WidgetPtr GenerateConfigDescription(const VirtualRobot::RobotPtr &, const std::map< std::string, ConstControlDevicePtr > &, const std::map< std::string, ConstSensorDevicePtr > &)
std::vector< ControlTarget1DoFActuatorZeroVelocity * > targetsVel
void setControllerTarget(const Ice::FloatSeq &, const Ice::Current &) override
NJointZeroTorqueOrVelocityControllerConfigPtr ConfigPtrT
NJointZeroTorqueOrVelocityController(RobotUnitPtr prov, const NJointZeroTorqueOrVelocityControllerConfigPtr &config, const VirtualRobot::RobotPtr &)
std::vector< ControlTarget1DoFActuatorZeroTorque * > targetsTorque
void rtPostDeactivateController() override
This function is called after the controller is deactivated.
void rtRun(const IceUtil::Time &sensorValuesTimestamp, const IceUtil::Time &timeSinceLastIteration) override
TODO make protected and use attorneys.
static NJointZeroTorqueOrVelocityControllerConfigPtr GenerateConfigFromVariants(const StringVariantBaseMap &values)
std::string getClassName(const Ice::Current &) const override
void rtPreActivateController() override
This function is called before the controller is activated.
std::vector< bool > torqueControlled
std::shared_ptr< class Robot > RobotPtr
This file offers overloads of toIce() and fromIce() functions for STL container types.
std::map< std::string, VariantBasePtr > StringVariantBaseMap
IceUtil::Handle< class RobotUnit > RobotUnitPtr
Ice::FloatSeq targetTorqueOrVelocity