30 #include <MemoryX/interface/core/EntityBase.h>
31 #include <MemoryX/interface/memorytypes/MemoryEntities.h>
32 #include <MemoryX/interface/memorytypes/MemorySegments.h>
38 virtual public EnvironmentalPrimitiveSegmentBase
43 EnvironmentalPrimitiveBaseList getEnvironmentalPrimitives(const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
44 PlanePrimitiveBaseList getPlanes(const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
45 SpherePrimitiveBaseList getSpheres(const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
46 CylinderPrimitiveBaseList getCylinders(const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
47 BoxPrimitiveBaseList getBoxes(const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
49 EnvironmentalPrimitiveBasePtr getEnvironmentalPrimitiveById(
const std::string&
id, const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
50 PlanePrimitiveBasePtr getPlaneById(
const std::string&
id, const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
51 SpherePrimitiveBasePtr getSphereById(
const std::string&
id, const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
52 CylinderPrimitiveBasePtr getCylinderById(
const std::string&
id, const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
53 BoxPrimitiveBasePtr getBoxById(
const std::string&
id, const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
55 EnvironmentalPrimitiveBaseList getEnvironmentalPrimitivesByTimestamp(
const armarx::TimestampBasePtr& timestamp, const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
56 PlanePrimitiveBaseList getPlanesByTimestamp(
const armarx::TimestampBasePtr& timestamp, const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
57 SpherePrimitiveBaseList getSpheresByTimestamp(
const armarx::TimestampBasePtr& timestamp, const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
58 CylinderPrimitiveBaseList getCylindersByTimestamp(
const armarx::TimestampBasePtr& timestamp, const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
59 BoxPrimitiveBaseList getBoxesByTimestamp(
const armarx::TimestampBasePtr& timestamp, const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
61 EnvironmentalPrimitiveBaseList getMostRecentEnvironmentalPrimitives(const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
62 PlanePrimitiveBaseList getMostRecentPlanes(const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
63 SpherePrimitiveBaseList getMostRecentSpheres(const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
64 CylinderPrimitiveBaseList getMostRecentCylinders(const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
65 BoxPrimitiveBaseList getMostRecentBoxes(const ::Ice::Current&
c = Ice::emptyCurrent)
const override;
67 void removePrimitivesByTimestamp(
const armarx::TimestampBasePtr& timestamp, const ::Ice::Current&
c = Ice::emptyCurrent)
override;
68 void removeOlderPrimitives(
const armarx::TimestampBasePtr& olderThan, const ::Ice::Current&
c = Ice::emptyCurrent)
override;
75 for (
auto& p : primitives)
78 if (t > mostRecentTimestamp)
80 mostRecentTimestamp = t;
84 return mostRecentTimestamp;