36#define TCP_POSE_CHANNEL "TCPPose"
37#define TCP_TRANS_VELOCITIES_CHANNEL "TCPVelocities"
80 FramedPoseBaseMap::const_iterator it = poseMap.begin();
82 for (; it != poseMap.end(); it++)
86 const std::string& tcpName = it->first;
107 tcpName,
"qx",
Variant(vec->orientation->qx),
"Quaternion part x");
109 tcpName,
"qy",
Variant(vec->orientation->qy),
"Quaternion part y");
111 tcpName,
"qz",
Variant(vec->orientation->qz),
"Quaternion part z");
113 tcpName,
"qw",
Variant(vec->orientation->qw),
"Quaternion part w");
134 const FramedDirectionMap& tcpOrientationVelocities,
138 FramedDirectionMap::const_iterator it = tcpTranslationVelocities.begin();
140 for (; it != tcpTranslationVelocities.end(); it++)
145 FramedDirectionMap::const_iterator itOri = tcpOrientationVelocities.find(it->first);
147 if (itOri != tcpOrientationVelocities.end())
149 vecOri = FramedDirectionPtr::dynamicCast(itOri->second);
152 const std::string& tcpName = it->first;
161 "Pose of " + tcpName);
169 const std::string channelName = tcpName +
"Velocities";
173 offerChannel(channelName,
"pose components of " + tcpName);
181 channelName,
"frame",
Variant(vecOri->frame),
"Reference Frame");
#define TCP_TRANS_VELOCITIES_CHANNEL
std::string getConfigIdentifier()
Retrieve config identifier for this component as set in constructor.
Property< PropertyType > getProperty(const std::string &name)
Checks if the numbers published in the relevant data fields equal a reference value.
Checks if the numbers published in the relevant data fields are larger than a reference value.
Checks if the numbers published in the relevant data fields are smaller than a reference value.
Checks if the relevant data fields have been updated since the installation of this condition.
void usingTopic(const std::string &name, bool orderedPublishing=false)
Registers a proxy for subscription after initialization.
bool existsChannel(const std::string &channelName) const
void offerChannel(std::string channelName, std::string description)
Offer a channel.
void offerConditionCheck(std::string checkName, ConditionCheck *conditionCheck)
Offer a condition check.
void updateChannel(const std::string &channelName, const std::set< std::string > &updatedDatafields=std::set< std::string >())
Update all conditions for a channel.
void offerDataFieldWithDefault(std::string channelName, std::string datafieldName, const Variant &defaultValue, std::string description)
Offer a datafield with default value.
bool existsDataField(const std::string &channelName, const std::string &datafieldName) const
void setDataField(const std::string &channelName, const std::string &datafieldName, const Variant &value, bool triggerFilterUpdate=true)
set datafield with datafieldName and in channel channelName
void onConnectObserver() override
Framework hook.
void reportTCPPose(const FramedPoseBaseMap &poseMap, const Ice::Current &c=Ice::emptyCurrent) override
PropertyDefinitionsPtr createPropertyDefinitions() override
void onInitObserver() override
Framework hook.
void reportTCPVelocities(const FramedDirectionMap &tcpTranslationVelocities, const FramedDirectionMap &tcpOrientationVelocities, const Ice::Current &c=Ice::emptyCurrent) override
The Variant class is described here: Variants.
#define ARMARX_CHECK_EXPRESSION(expression)
This macro evaluates the expression and if it turns out to be false it will throw an ExpressionExcept...
This file offers overloads of toIce() and fromIce() functions for STL container types.
IceInternal::Handle< FramedDirection > FramedDirectionPtr
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.
IceInternal::Handle< FramedPose > FramedPosePtr
::std::map<::std::string, ::armarx::FramedPoseBasePtr > FramedPoseBaseMap