Go to the documentation of this file.
28 #include <condition_variable>
34 #include <ArmarXCore/interface/core/RemoteObjectNode.h>
36 #include <RobotComponents/interface/components/MotionPlanning/Tasks/RRTConnect/Task.h>
37 #include "../../util/Metrics.h"
40 #include "../MotionPlanningTask.h"
49 public virtual TaskBase
62 const CSpaceBasePtr& cspace,
63 const VectorXf& startCfg,
64 const VectorXf& goalCfg,
65 const std::string& taskName =
"RRTConnectTask",
67 Ice::Long maximalPlanningTimeInSeconds = 300,
68 float dcdStep = 0.01f,
77 void abortTask(
const Ice::Current& = Ice::emptyCurrent)
override;
81 Path getPath(
const Ice::Current& = Ice::emptyCurrent)
const override;
90 void run(
const RemoteObjectNodePrxList& remoteNodes,
const Ice::Current& = Ice::emptyCurrent)
override;
92 void setPath(
const Path& path,
const Ice::Current& = Ice::emptyCurrent)
override;
117 template<
class Base,
class Derived>
friend class ::armarx::GenericFactory;
void setPath(const Path &path, const Ice::Current &=Ice::emptyCurrent) override
void abortTask(const Ice::Current &=Ice::emptyCurrent) override
Aborts planning.
void workerHasAborted(Ice::Long workerId, const Ice::Current &=Ice::emptyCurrent) override
Task()=default
Ctor used by object factories.
void postEnqueueing() override
Called by the planning server after the task was enqueued.
Path getPath(const Ice::Current &=Ice::emptyCurrent) const override
std::vector< bool > workerAbortedFlags
void run(const RemoteObjectNodePrxList &remoteNodes, const Ice::Current &=Ice::emptyCurrent) override
Runs the task.
void checkParameters()
Checks for illegal parameters.
The RemoteHandle class wrapps a ClientSideRemoteHandleControlBlock and can be used just as a Ice prox...
std::filesystem::path Path
std::condition_variable doneCV
This file offers overloads of toIce() and fromIce() functions for STL container types.