28 #include <MemoryX/interface/components/LongtermMemoryInterface.h>
29 #include <MemoryX/interface/core/MemoryInterface.h>
42 virtual public WorkingMemorySnapshotInterface
47 const DatabaseInterfacePrx& databasePrx);
50 PersistentEntitySegmentBasePrx
51 addSegment(const ::std::string& segName,
52 const ::Ice::Current& = Ice::emptyCurrent)
override;
53 PersistentEntitySegmentBasePrx
54 getSegment(const ::std::string& segName,
55 const ::Ice::Current& = Ice::emptyCurrent)
override;
56 bool hasSegment(const ::std::string& segName,
57 const ::Ice::Current& = Ice::emptyCurrent)
override;
58 NameList getSegmentNames(const ::Ice::Current& = Ice::emptyCurrent)
override;
59 void clear(const ::Ice::Current& = Ice::emptyCurrent)
override;
65 void saveWorkingMemory(
const AbstractWorkingMemoryInterfacePrx& workingMemory,
66 const ::Ice::Current& = Ice::emptyCurrent)
override;
67 void saveWorkingMemorySubset(
const AbstractWorkingMemoryInterfacePrx& workingMemory,
68 const Ice::StringSeq& entityIdList,
69 const ::Ice::Current& = Ice::emptyCurrent)
override;
75 void restoreWorkingMemory(
const AbstractWorkingMemoryInterfacePrx& workingMemory,
76 const ::Ice::Current& = Ice::emptyCurrent)
override;
80 SegmentMap getSegmentAndCollectionNames()
const;
83 void serialize(
const armarx::ObjectSerializerBasePtr& serializer,
84 const ::Ice::Current& = Ice::emptyCurrent)
const override;
85 void deserialize(
const armarx::ObjectSerializerBasePtr& serializer,
86 const ::Ice::Current& = Ice::emptyCurrent)
override;
93 const DatabaseInterfacePrx& databasePrx;
95 std::map<Ice::Identity, PersistentEntitySegmentBasePtr> openedSegments;
97 std::string getSegmentCollectionName(
const std::string& segName);
100 void addSegmentToMap(
const std::string& segName);