28#include <RobotComponents/interface/components/MotionPlanning/Tasks/AdaptiveDynamicDomainInformedRRTStar/DataStructures.h>
34namespace
armarx::addirrtstar
36 static const std::string ADDIRRTSTAR_TREE_UPDATE_TOPIC_NAME =
"ADDIRRTStarTreeUpdateTopic";
43 template <
class T = std::
size_t>
45 getUpdatesWorkerId(
const Update& u)
48 return static_cast<std::size_t
>(u.workerId);
56 template <
class T = std::
size_t>
58 getUpdatesPreviousUpdateSubId(
const Update& u)
60 const auto workerId = getUpdatesWorkerId(u);
62 return static_cast<T>(u.dependetOnUpdateIds.at(workerId));
70 template <
class T = std::
size_t>
72 getUpdatesSubId(
const Update& u)
74 return getUpdatesPreviousUpdateSubId(u) + 1;
84 updateDependsOn(
const Update& update,
const Update& dependency)
86 return update.dependetOnUpdateIds.at(getUpdatesWorkerId(dependency)) >=
87 getUpdatesSubId<Ice::Long>(dependency);
95 inline AdaptiveDynamicDomainParameters
96 generateADDParamsFromDCDStepsize(
float dcdStepsize)
98 AdaptiveDynamicDomainParameters result;
100 result.initialBorderRadius = 20 * dcdStepsize;
101 result.minimalRadius = 5 * dcdStepsize;
#define ARMARX_OVERLOAD_STD_HASH(Type, Members)
Overloads the std::hash template for Type.
#define ARMARX_CHECK_EXPRESSION(expression)
This macro evaluates the expression and if it turns out to be false it will throw an ExpressionExcept...
std::string nodeId2String(const NodeId &id)
bool update(mongocxx::collection &coll, const nlohmann::json &query, const nlohmann::json &update)
This file offers overloads of toIce() and fromIce() functions for STL container types.