29#include <ArmarXCore/interface/observers/VariantBase.h>
34#include <RobotAPI/interface/core/RobotLocalization.h>
35#include <RobotAPI/interface/observers/PlatformUnitObserverInterface.h>
56 "Name of the platform (will publish values on PlatformName + 'State')");
75 virtual public PlatformUnitObserverInterface
84 ::Ice::Float currentPlatformVelocityY,
85 ::Ice::Float currentPlatformVelocityRotation,
86 const Ice::Current&
c = Ice::emptyCurrent)
override;
90 const Ice::Current&)
override;
94 const ::Ice::Current& = ::Ice::emptyCurrent)
override;
99 return "PlatformUnitObserver";
108 void nameValueMapToDataFields(std::string channelName,
109 ::Ice::Float platformPositionX,
110 ::Ice::Float platformPositionY,
111 ::Ice::Float platformRotation);
114 std::string platformNodeName;
138 const std::string& platformName)
const
140 if (platformUnitObserverName.empty())
142 throw LocalException(
"kinematicUnitObserverName must not be empty!");
145 if (platformName.empty())
147 throw LocalException(
"jointName must not be empty!");
154 std::string channelName;
#define ARMARX_CREATE_CHECK(OFFERER, NEWCHECK)
#define ARMARXCORE_IMPORT_EXPORT
DataFieldIdentifier provide the basis to identify data field within a distributed ArmarX scenario.
ObserverPropertyDefinitions(std::string prefix)
std::string prefix
Prefix of the properties such as namespace, domain, component name, etc.
PropertyDefinition< PropertyType > & defineOptionalProperty(const std::string &name, PropertyType defaultValue, const std::string &description="", PropertyDefinitionBase::PropertyConstness constness=PropertyDefinitionBase::eConstant)
This file offers overloads of toIce() and fromIce() functions for STL container types.
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.
double angle(const Point &a, const Point &b, const Point &c)