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();
108 virtual public armarx::control::ConfigurableNJointControllerInterface
111 using ConfigPtrT = control::ConfigurableNJointControllerConfigPtr;
114 const NJointControllerConfigPtr& config,
119 std::string
getClassName(
const Ice::Current& iceCurrent = Ice::emptyCurrent)
const override;
121 void rtRun(
const IceUtil::Time& sensorValuesTimestamp,
122 const IceUtil::Time& timeSinceLastIteration)
override;
124 void updateConfig(const ::armarx::aron::data::dto::DictPtr& dto,
125 const Ice::Current& iceCurrent = Ice::emptyCurrent)
override;
128 getConfig(const ::Ice::Current& = ::Ice::emptyCurrent)
override;
144 Eigen::Isometry3f global_T_robot;
154 std::atomic_bool rtFirstRun =
true;
155 std::atomic_bool rtReady =
false;
159 std::optional<traj_ctrl::global::TrajectoryFollowingController>
160 trajectoryFollowingController;
163 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