31#include <MemoryX/interface/core/EntityBase.h>
32#include <MemoryX/interface/memorytypes/MemoryEntities.h>
36 template <
class IceBaseClass,
class DerivedClass>
50 template <
class IceBaseClass,
class DerivedClass>
60 ObjectInstance(
const std::string& name,
const std::string&
id =
"");
80 const ::Ice::Current& = Ice::emptyCurrent)
override;
86 const ::Ice::Current& = Ice::emptyCurrent)
override;
108 void setPosition(
const armarx::FramedPositionBasePtr& position,
109 const ::Ice::Current& = Ice::emptyCurrent)
override;
120 MultivariateNormalDistributionBasePtr
129 const ::Ice::Current& = Ice::emptyCurrent)
override;
150 void setOrientation(
const armarx::FramedOrientationBasePtr& orientation,
151 const ::Ice::Current& = Ice::emptyCurrent)
override;
163 void setPose(
const armarx::FramedPoseBasePtr& newPose);
170 ClassProbabilityMap
getClasses(const ::Ice::Current& = Ice::emptyCurrent)
const override;
178 void setClass(
const std::string& className,
180 const Ice::Current& = Ice::emptyCurrent)
override;
188 void addClass(
const std::string& className,
190 const Ice::Current& = Ice::emptyCurrent)
override;
195 void clearClasses(
const Ice::Current& = Ice::emptyCurrent)
override;
211 const ::Ice::Current& = Ice::emptyCurrent)
const override;
222 Ice::ObjectPtr
ice_clone()
const override;
227 armarx::FramedPositionBasePtr
228 getPositionBase(const ::Ice::Current& = Ice::emptyCurrent)
const override;
229 armarx::FramedOrientationBasePtr
236 void output(std::ostream& stream)
const;
254 operator<<(std::ostream& stream,
const ObjectInstanceBasePtr& rhs)
256 stream << ObjectInstancePtr::dynamicCast(rhs);
Entity is the superclass for all MemoryX memory chunks.
void setMotionModel(AbstractMotionModelPtr motionModel)
Set the motion model for this object.
int getLocalizationPriority(const ::Ice::Current &=Ice::emptyCurrent) const override
void setOrientation(const armarx::FramedOrientationBasePtr &orientation, const ::Ice::Current &=Ice::emptyCurrent) override
Set orientation of the instance.
void setPositionUncertainty(const MultivariateNormalDistributionBasePtr &uncertainty, const ::Ice::Current &=Ice::emptyCurrent) override
Set uncertainty of position estimate.
EntityAttributeBasePtr getOrientationAttribute() const
Retrieve attribute which holds instance position.
armarx::FramedPosePtr getPose() const
Convenience function to get position and orientation attributes at once.
friend std::ostream & operator<<(std::ostream &stream, const ObjectInstance &rhs)
armarx::FramedOrientationPtr getOrientation() const
Retrieve orientation of the instance.
armarx::FramedPositionPtr getPosition() const
Retrieve position of the instance.
void setClass(const std::string &className, float probability, const Ice::Current &=Ice::emptyCurrent) override
Set the class attribute of the ObjectInstance.
bool hasLocalizationTimestamp() const
armarx::FramedPositionBasePtr getPositionBase(const ::Ice::Current &=Ice::emptyCurrent) const override
void setExistenceCertainty(float existenceCertainty, const ::Ice::Current &=Ice::emptyCurrent) override
Set existence certainty for this instance.
AbstractMotionModelPtr motionModel
void addClass(const std::string &className, float probability, const Ice::Current &=Ice::emptyCurrent) override
Adds new class membership to the class attribute.
void clearClasses(const Ice::Current &=Ice::emptyCurrent) override
Clear class membership.
float getExistenceCertainty(const ::Ice::Current &=Ice::emptyCurrent) const override
Retrieve existence certainty for this instance.
void setPose(const armarx::FramedPoseBasePtr &newPose)
Convenience function to set position and orientation attributes at once.
void setPosition(const armarx::FramedPositionBasePtr &position, const ::Ice::Current &=Ice::emptyCurrent) override
Set position of the instance.
AbstractMotionModelPtr getMotionModel() const
armarx::FramedOrientationBasePtr getOrientationBase(const ::Ice::Current &=Ice::emptyCurrent) const override
::std::string getMostProbableClass(const ::Ice::Current &=Ice::emptyCurrent) const override
Retrieve the class with highest membership probability.
void setLocalizationPriority(Ice::Int priority, const ::Ice::Current &=Ice::emptyCurrent) override
void setLocalizationTimestamp(const IceUtil::Time ×tamp)
Ice::ObjectPtr ice_clone() const override
ObjectInstance(const std::string &name, const std::string &id="")
Constructs a new ObjectInstance WorkingMemory entity.
MultivariateNormalDistributionBasePtr getPositionUncertainty(const ::Ice::Current &=Ice::emptyCurrent) const override
Get uncertainty of position estimate.
EntityAttributeBasePtr getPositionAttribute() const
Retrieve attribute which holds instance position.
ObjectInstancePtr clone(const Ice::Current &c=Ice::emptyCurrent) const
float getClassProbability(const ::std::string &className, const ::Ice::Current &=Ice::emptyCurrent) const override
Retrieve membership probability for a given class.
ClassProbabilityMap getClasses(const ::Ice::Current &=Ice::emptyCurrent) const override
Retrieve classes and associated class membership probability for this instance.
IceUtil::Time getLocalizationTimestamp() const
This file offers overloads of toIce() and fromIce() functions for STL container types.
IceInternal::Handle< FramedPosition > FramedPositionPtr
IceInternal::Handle< FramedOrientation > FramedOrientationPtr
IceInternal::Handle< FramedPose > FramedPosePtr
IceInternal::Handle< ObjectInstance > ObjectInstancePtr
IceInternal::Handle< AbstractMotionModel > AbstractMotionModelPtr