30#include <RobotComponents/interface/components/MotionPlanning/MotionPlanningServer.h>
31#include <RobotComponents/interface/components/PlannedMotionProviderInterface.h>
47 "JointMotionSafetyMargin", 80.0f,
"Safety margin for joint arm motion in mm");
49 "PlatformMotionSafetyMargin", 100.0f,
"Safety margin for platform motion in mm");
66 virtual public armarx::PlannedMotionProviderInterface
75 return "PlannedMotionProvider";
78 GraspingTrajectory
planMotion(
const SimoxCSpaceBasePtr& cSpaceBase,
79 const SimoxCSpaceBasePtr& cSpacePlatformBase,
80 const MotionPlanningData& mpd,
81 const Ice::Current&
c = Ice::emptyCurrent)
override;
83 const SimoxCSpaceBasePtr& cSpacePlatformBase,
84 const MotionPlanningData& mpd,
85 const Ice::Current&
c)
override;
89 const MotionPlanningData& mpd,
90 const Ice::Current&
c = Ice::emptyCurrent)
override;
93 const MotionPlanningData& mpd,
94 const Ice::Current&
c = Ice::emptyCurrent)
override;
123 std::vector<RemoteHandle<MotionPlanningTaskControlInterfacePrx>> planningTasks;
126 MotionPlanningServerInterfacePrx mps;
127 int maxPostProcessingSteps;
131 TrajectoryPtr calculateJointTrajectory(
const SimoxCSpaceBasePtr& cSpaceBase,
132 const MotionPlanningData& mpd,
133 const Ice::Current&
c = Ice::emptyCurrent);
135 TrajectoryPtr calculatePlatformTrajectory(
const SimoxCSpaceBasePtr& cSpacePlatformBase,
136 const MotionPlanningData& mpd,
137 const Ice::Current&
c = Ice::emptyCurrent);
139 const MotionPlanningData& mpd,
140 VectorXf* storeStart,
143 Eigen::Vector3f* storeRpyAgent);
145 const MotionPlanningData& mpd,
146 VectorXf* storeStart,
155 bool doRandomShortcutPostProcessing =
false);
158 const std::string roboPart);
Default component property definition container.
ComponentPropertyDefinitions(std::string prefix, bool hasObjectNameParameter=true)
Baseclass for all ArmarX ManagedIceObjects requiring properties.
PlannedMotionProviderPropertyDefinitions(std::string prefix)
Brief description of class PlannedMotionProvider.
void onInitComponent() override
GraspingTrajectory planMotion(const SimoxCSpaceBasePtr &cSpaceBase, const SimoxCSpaceBasePtr &cSpacePlatformBase, const MotionPlanningData &mpd, const Ice::Current &c=Ice::emptyCurrent) override
void onDisconnectComponent() override
armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
TrajectoryBasePtr planPlatformMotion(const SimoxCSpaceBasePtr &cSpacePlatformBase, const MotionPlanningData &mpd, const Ice::Current &c=Ice::emptyCurrent) override
void onConnectComponent() override
TrajectoryBasePtr planJointMotion(const SimoxCSpaceBasePtr &cSpaceBase, const MotionPlanningData &mpd, const Ice::Current &c=Ice::emptyCurrent) override
void onExitComponent() override
GraspingTrajectory planMotionParallel(const SimoxCSpaceBasePtr &cSpaceBase, const SimoxCSpaceBasePtr &cSpacePlatformBase, const MotionPlanningData &mpd, const Ice::Current &c) override
std::string getDefaultName() const override
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)
The RemoteHandle class wrapps a ClientSideRemoteHandleControlBlock and can be used just as a Ice prox...
std::shared_ptr< class Robot > RobotPtr
This file offers overloads of toIce() and fromIce() functions for STL container types.
IceInternal::Handle< ScaledCSpace > ScaledCSpacePtr
An ice handle to a ScaledCSpace.
IceInternal::Handle< Trajectory > TrajectoryPtr
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.
::IceInternal::ProxyHandle<::IceProxy::armarx::RobotStateComponentInterface > RobotStateComponentInterfacePrx
IceInternal::Handle< SimoxCSpace > SimoxCSpacePtr
An ice handle for a SimoxCSpace.