28 #include <RobotComponents/interface/components/MotionPlanning/Tasks/AdaptiveDynamicDomainInformedRRTStar/DataStructures.h>
29 #include "../../util/HashingUtil.h"
33 namespace
armarx::addirrtstar
35 static const std::string ADDIRRTSTAR_TREE_UPDATE_TOPIC_NAME =
"ADDIRRTStarTreeUpdateTopic";
42 template<
class T = std::
size_t>
43 T getUpdatesWorkerId(
const Update& u)
46 return static_cast<std::size_t
>(u.workerId);
54 template<
class T = std::
size_t>
55 T getUpdatesPreviousUpdateSubId(
const Update& u)
57 const auto workerId = getUpdatesWorkerId(u);
59 return static_cast<T>(u.dependetOnUpdateIds.at(workerId));
67 template<
class T = std::
size_t>
68 T getUpdatesSubId(
const Update& u)
70 return getUpdatesPreviousUpdateSubId(u) + 1;
79 inline bool updateDependsOn(
const Update&
update,
const Update& dependency)
81 return update.dependetOnUpdateIds.at(getUpdatesWorkerId(dependency)) >= getUpdatesSubId<Ice::Long>(dependency);
89 inline AdaptiveDynamicDomainParameters generateADDParamsFromDCDStepsize(
float dcdStepsize)
91 AdaptiveDynamicDomainParameters result;
93 result.initialBorderRadius = 20 * dcdStepsize;
94 result.minimalRadius = 5 * dcdStepsize;