25 #include <Ice/ObjectAdapter.h>
28 #include <ArmarXCore/interface/serialization/JSONSerialization.h>
31 #include "../MongoSerializer.h"
41 this->entityName = entityName;
45 const std::string& segmentName,
47 MemoryInterfacePrx memoryPrx,
48 EntityMemorySegmentInterfacePrx segmentPrx)
50 this->entityId = entity->getId();
51 this->entityName = entity->getName();
52 this->memory = memoryPrx;
53 this->segment = segmentPrx;
54 this->segmentName = segmentName;
59 IceUtil::Shared(entityRef), EntityRefBase(entityRef)
61 this->entityId = entityRef.entityId;
62 this->segment = entityRef.segment;
63 this->segmentName = entityRef.segmentName;
64 this->memory = entityRef.memory;
66 this->entityName = entityRef.entityName;
71 const Ice::Current&
c)
const
74 armarx::AbstractObjectSerializerPtr::dynamicCast(serializer);
76 obj->setString(
"entityId", entityId);
77 obj->setString(
"entityName", entityName);
78 obj->setString(
"segmentName", this->segmentName);
79 obj->setString(
"memoryName", this->
memoryName);
84 const Ice::Current&
c)
87 armarx::AbstractObjectSerializerPtr::dynamicCast(serializer);
88 entityId = obj->getString(
"entityId");
89 entityName = obj->getString(
"entityName");
91 segmentName = obj->getString(
"segmentName");
94 if (
c.adapter &&
c.adapter->getCommunicator())
96 memory = MemoryInterfacePrx::checkedCast(
97 c.adapter->getCommunicator()->stringToProxy(
memoryName));
101 segment = memoryx::EntityMemorySegmentInterfacePrx::checkedCast(
102 memory->getSegment(segmentName));
111 ARMARX_ERROR_S <<
"cannot create proxy to segment " << segmentName <<
" in memory "
117 ARMARX_ERROR_S <<
"adapter or communicator zero - cannot create proxy to segment "
122 armarx::VariantDataClassPtr
131 return this->
clone();
137 return entityName +
"_" + entityId +
" in segment (" + segmentName +
")";
157 return segment->getEntityById(entityId);
170 return entityId == other->entityId && segmentName == other->segmentName &&