29 EnvironmentalPrimitiveSegmentBase::EnvironmentalPrimitiveSegmentBase()
33 EnvironmentalPrimitiveBaseList
36 EnvironmentalPrimitiveBaseList primitives;
40 EnvironmentalPrimitiveBasePtr primitive =
45 primitives.push_back(primitive);
52 PlanePrimitiveBaseList
55 PlanePrimitiveBaseList primitives;
61 if (primitive->ice_isA(PlanePrimitiveBase::ice_staticId()))
63 primitives.push_back(PlanePrimitiveBasePtr::dynamicCast(primitive));
70 SpherePrimitiveBaseList
73 SpherePrimitiveBaseList primitives;
79 if (primitive->ice_isA(SpherePrimitiveBase::ice_staticId()))
81 primitives.push_back(SpherePrimitiveBasePtr::dynamicCast(primitive));
88 CylinderPrimitiveBaseList
91 CylinderPrimitiveBaseList primitives;
97 if (primitive->ice_isA(CylinderPrimitiveBase::ice_staticId()))
99 primitives.push_back(CylinderPrimitiveBasePtr::dynamicCast(primitive));
109 BoxPrimitiveBaseList primitives;
115 if (primitive->ice_isA(BoxPrimitiveBase::ice_staticId()))
117 primitives.push_back(BoxPrimitiveBasePtr::dynamicCast(primitive));
124 EnvironmentalPrimitiveBasePtr
126 const Ice::Current&
c)
const
128 return EnvironmentalPrimitiveBasePtr::dynamicCast(
getEntityById(
id,
c));
131 PlanePrimitiveBasePtr
136 if (primitive->ice_isA(PlanePrimitiveBase::ice_staticId()))
138 return PlanePrimitiveBasePtr::dynamicCast(primitive);
142 return PlanePrimitiveBasePtr();
146 SpherePrimitiveBasePtr
151 if (primitive->ice_isA(SpherePrimitiveBase::ice_staticId()))
153 return SpherePrimitiveBasePtr::dynamicCast(primitive);
157 return SpherePrimitiveBasePtr();
161 CylinderPrimitiveBasePtr
163 const Ice::Current&
c)
const
167 if (primitive->ice_isA(CylinderPrimitiveBase::ice_staticId()))
169 return CylinderPrimitiveBasePtr::dynamicCast(primitive);
173 return CylinderPrimitiveBasePtr();
182 if (primitive->ice_isA(BoxPrimitiveBase::ice_staticId()))
184 return BoxPrimitiveBasePtr::dynamicCast(primitive);
188 return BoxPrimitiveBasePtr();
192 EnvironmentalPrimitiveBaseList
194 const armarx::TimestampBasePtr& timestamp,
195 const Ice::Current&
c)
const
197 EnvironmentalPrimitiveBaseList result;
203 if (primitive->getTime(
c)->timestamp == timestamp->timestamp)
205 result.push_back(primitive);
212 PlanePrimitiveBaseList
214 const Ice::Current&
c)
const
216 PlanePrimitiveBaseList result;
222 if (primitive->ice_isA(PlanePrimitiveBase::ice_staticId()) &&
223 primitive->getTime(
c)->timestamp == timestamp->timestamp)
225 result.push_back(PlanePrimitiveBasePtr::dynamicCast(primitive));
232 SpherePrimitiveBaseList
234 const Ice::Current&
c)
const
236 SpherePrimitiveBaseList result;
242 if (primitive->ice_isA(SpherePrimitiveBase::ice_staticId()) &&
243 primitive->getTime(
c)->timestamp == timestamp->timestamp)
245 result.push_back(SpherePrimitiveBasePtr::dynamicCast(primitive));
252 CylinderPrimitiveBaseList
254 const armarx::TimestampBasePtr& timestamp,
255 const Ice::Current&
c)
const
257 CylinderPrimitiveBaseList result;
263 if (primitive->ice_isA(CylinderPrimitiveBase::ice_staticId()) &&
264 primitive->getTime(
c)->timestamp == timestamp->timestamp)
266 result.push_back(CylinderPrimitiveBasePtr::dynamicCast(primitive));
275 const Ice::Current&
c)
const
277 BoxPrimitiveBaseList result;
283 if (primitive->ice_isA(BoxPrimitiveBase::ice_staticId()) &&
284 primitive->getTime(
c)->timestamp == timestamp->timestamp)
286 result.push_back(BoxPrimitiveBasePtr::dynamicCast(primitive));
293 EnvironmentalPrimitiveBaseList
297 Ice::Long timestamp = getMostRecentTimestamp<EnvironmentalPrimitiveBasePtr>(primitives,
c);
299 EnvironmentalPrimitiveBaseList result;
300 for (
auto& p : primitives)
302 if (p->getTime()->timestamp == timestamp)
311 PlanePrimitiveBaseList
314 PlanePrimitiveBaseList primitives =
getPlanes(
c);
315 Ice::Long timestamp = getMostRecentTimestamp<PlanePrimitiveBasePtr>(primitives,
c);
317 PlanePrimitiveBaseList result;
318 for (
auto& p : primitives)
320 if (p->getTime()->timestamp == timestamp)
329 SpherePrimitiveBaseList
332 SpherePrimitiveBaseList primitives =
getSpheres(
c);
333 Ice::Long timestamp = getMostRecentTimestamp<SpherePrimitiveBasePtr>(primitives,
c);
335 SpherePrimitiveBaseList result;
336 for (
auto& p : primitives)
338 if (p->getTime()->timestamp == timestamp)
347 CylinderPrimitiveBaseList
351 Ice::Long timestamp = getMostRecentTimestamp<CylinderPrimitiveBasePtr>(primitives,
c);
353 CylinderPrimitiveBaseList result;
354 for (
auto& p : primitives)
356 if (p->getTime()->timestamp == timestamp)
368 BoxPrimitiveBaseList primitives =
getBoxes(
c);
369 Ice::Long timestamp = getMostRecentTimestamp<BoxPrimitiveBasePtr>(primitives,
c);
371 BoxPrimitiveBaseList result;
372 for (
auto& p : primitives)
374 if (p->getTime()->timestamp == timestamp)
385 const armarx::TimestampBasePtr& timestamp,
386 const Ice::Current&
c)
390 for (
auto& p : primitives)
392 if (p->getTime()->timestamp == timestamp)
401 const Ice::Current&
c)
405 for (
auto& p : primitives)
407 if (p->getTime()->timestamp < olderThan)