30 #include <MemoryX/interface/components/WorkingMemoryInterface.h>
31 #include <MemoryX/interface/memorytypes/MemorySegments.h>
44 defineOptionalProperty<std::string>(
45 "DebugDrawerTopicName",
47 "Where to draw the provided bounding boxes (if empty -> don't draw)");
49 defineOptionalProperty<std::string>(
51 "2960.0 9885.0 1000.0 1970.0 990.0 500.0;4490.0 7100.0 1000.0 1000.0 1180.0 "
52 "500.0;4465.0 10255.0 1750 490.0 500.0 2000;2680 6051 1100 800 800 500",
53 "Format: 'xCenter yCenter zCenter xSize ySize zSize' for one 6-tuple, separate "
54 "multiple tuples with ';'");
55 defineOptionalProperty<std::string>(
57 "3350.0 9960.0 1000.0 1820.0 840.0 500.0;4490.0 7100.0 1000.0 1000.0 1180.0 "
58 "500.0;4465.0 10255.0 1750 490.0 500.0 2000;2680 6051 1100 800 800 500",
59 "Format: 'xCenter yCenter zCenter xSize ySize zSize' for one 6-tuple, separate "
60 "multiple tuples with ';'");
84 PredicateInfoList
getPredicateInfos(
const Ice::Current& = Ice::emptyCurrent)
override;
85 PredicateInstanceList
calcPredicates(
const Ice::Current& = Ice::emptyCurrent)
override;
88 struct GraspabilityDescriptor
90 std::string className;
91 bool hasGraspableSuperclass;
96 std::vector<Box> stringToBoxes(
const std::string& boxesString);
97 void addPredicateIfInside(PredicateInstanceList& result,
98 const std::string& predicateName,
100 const std::vector<Box>& boxes);
101 std::string debugDrawerTopicName;
102 std::vector<Box> boxesL;
103 std::vector<Box> boxesR;
104 WorkingMemoryInterfacePrx wm;
105 WorkingMemoryEntitySegmentBasePrx objectInstances;
106 PriorKnowledgeInterfacePrx prior;
107 PersistentObjectClassSegmentBasePrx objectClasses;
109 armarx::DrawColor leftColor;
110 armarx::DrawColor rightColor;
111 PredicateInfo leftGraspable;
112 PredicateInfo rightGraspable;
115 std::vector<GraspabilityDescriptor> graspabilityDescriptors;