29#include <Ice/Current.h>
30#include <Ice/Object.h>
31#include <IceUtil/Time.h>
33#include <VirtualRobot/VirtualRobot.h>
35#include <ArmarXCore/interface/observers/ObserverInterface.h>
40#include <RobotAPI/interface/aron/Aron.h>
41#include <RobotAPI/interface/units/RobotUnit/NJointController.h>
42#include <RobotAPI/interface/visualization/DebugDrawerInterface.h>
44#include <armarx/control/interface/ConfigurableNJointControllerInterface.h>
51 class SensorValueHolonomicPlatformWithAbsolutePosition;
71 Eigen::Vector2f
linear = Eigen::Vector2f::Zero();
77 linear = Eigen::Vector2f::Zero();
111 virtual public armarx::control::ConfigurableNJointControllerInterface
114 using ConfigPtrT = control::ConfigurableNJointControllerConfigPtr;
117 const NJointControllerConfigPtr& config,
122 std::string
getClassName(
const Ice::Current& iceCurrent = Ice::emptyCurrent)
const override;
124 void rtRun(
const IceUtil::Time& sensorValuesTimestamp,
125 const IceUtil::Time& timeSinceLastIteration)
override;
127 void updateConfig(const ::armarx::aron::data::dto::DictPtr& dto,
128 const Ice::Current& iceCurrent = Ice::emptyCurrent)
override;
131 getConfig(const ::Ice::Current& = ::Ice::emptyCurrent)
override;
147 Eigen::Isometry3f global_T_robot;
157 std::atomic_bool rtFirstRun =
true;
158 std::atomic_bool rtReady =
false;
162 std::optional<traj_ctrl::global::TrajectoryFollowingController>
163 trajectoryFollowingController;
166 Devices getDevices(
const VirtualRobot::RobotNodeSet& rns);
NJointControllerWithTripleBuffer(const Target &initialCommands=Target())
A simple triple buffer for lockfree comunication between a single writer and a single reader.
std::shared_ptr< class Robot > RobotPtr
::IceInternal::Handle< Dict > DictPtr
This file offers overloads of toIce() and fromIce() functions for STL container types.
::IceInternal::ProxyHandle<::IceProxy::armarx::DebugObserverInterface > DebugObserverInterfacePrx
IceUtil::Handle< class RobotUnit > RobotUnitPtr
::IceInternal::ProxyHandle<::IceProxy::armarx::DebugDrawerInterface > DebugDrawerInterfacePrx
detail::ControlThreadOutputBufferEntry SensorAndControl