29 #include <MemoryX/interface/workingmemory/AbstractWorkingMemoryInterface.h>
31 #include <MemoryX/interface/components/CommonStorageInterface.h>
32 #include <MemoryX/interface/components/PriorKnowledgeInterface.h>
33 #include <MemoryX/interface/components/LongtermMemoryInterface.h>
49 defineOptionalProperty<bool>(
"UsePriorMemory",
true,
"Switch prior knowledge on/off.");
51 defineOptionalProperty<std::string>(
"PriorMemoryName",
"PriorKnowledge",
"Name of PriorKnowledge Ice component");
53 defineOptionalProperty<bool>(
"UseLongtermMemory",
true,
"Switch longterm memory on/off.");
55 defineOptionalProperty<std::string>(
"LongtermMemoryName",
"LongtermMemory",
"Name of LongtermMemory Ice component");
57 defineOptionalProperty<bool>(
"PublishUpdates",
true,
"Publish scene updates (ObjectCreated/Updated/Removed) on IceStrom topic");
59 defineOptionalProperty<std::string>(
"UpdatesTopicName",
"WorkingMemoryUpdates",
"Name of IceStrom topic to publish scene updates on");
61 defineOptionalProperty<std::string>(
"SnapshotToLoad",
"",
"Name of Snapshot that should be loaded on start up. Leave empty for none.");
67 WorkingMemoryUpdaterBasePrx
proxy;
74 virtual public AbstractWorkingMemoryInterface,
82 return "AbstractWorkingMemory";
84 void onInitComponent()
override;
85 void onConnectComponent()
override;
96 getConfigIdentifier()));
101 return Component::getObjectAdapter();
105 AbstractMemorySegmentPrx addSegment(
const std::string& segmentName,
const AbstractMemorySegmentPtr& segment, const ::Ice::Current& = Ice::emptyCurrent)
override;
107 WorkingMemoryUpdaterBasePrx registerUpdater(
const std::string& updaterName,
const WorkingMemoryUpdaterBasePtr& updater, const ::Ice::Current& = Ice::emptyCurrent)
override;
108 WorkingMemoryUpdaterBasePrx getUpdater(
const std::string& updaterName, const ::Ice::Current& = Ice::emptyCurrent)
override;
109 void unregisterUpdater(
const std::string& updaterName, const ::Ice::Current& = Ice::emptyCurrent)
override;
117 return updatesTopicName;
120 AbstractMemorySegmentPrx
addGenericSegment(
const std::string& segmentName,
const Ice::Current&)
override
123 return addSegment(segmentName, segment);
127 void clear(const ::Ice::Current& = Ice::emptyCurrent)
override;
128 void print(const ::Ice::Current& = Ice::emptyCurrent)
const override;
132 virtual void onInitWorkingMemory() = 0;
133 virtual void onConnectWorkingMemory() = 0;