11 this->robotStateProxy = robotStateProxy;
13 predictedPoseAtStartOfCurrentLocalization =
nullptr;
14 globalRobotPoseAtLastLocalization =
nullptr;
15 uncertaintyAtLastLocalization =
nullptr;
16 uncertaintyAtStartOfCurrentLocalization =
nullptr;
21armarx::LinkedPoseBasePtr
30memoryx::MultivariateNormalDistributionBasePtr
41 const armarx::LinkedPoseBasePtr& poseAtLastLocalization,
42 const armarx::PoseBasePtr& globalRobotPoseAtLastLocalization,
43 const memoryx::MultivariateNormalDistributionBasePtr& uncertaintyAtLastLocalization,
47 this->poseAtLastLocalization = poseAtLastLocalization;
48 timeOfLastSuccessfulLocalization =
49 armarx::TimestampVariantPtr::dynamicCast(timeOfLastLocalizationStart->clone());
51 if (globalRobotPoseAtLastLocalization)
53 this->globalRobotPoseAtLastLocalization = globalRobotPoseAtLastLocalization;
56 if (uncertaintyAtLastLocalization)
58 this->uncertaintyAtLastLocalization = uncertaintyAtLastLocalization;
72armarx::LinkedPoseBasePtr
75 return predictedPoseAtStartOfCurrentLocalization;
78memoryx::MultivariateNormalDistributionBasePtr
81 return uncertaintyAtStartOfCurrentLocalization;
93 if (motionModelName.compare(
"Static") == 0)
97 else if (motionModelName.compare(
"RobotHand") == 0)
101 else if (motionModelName.compare(
"AttachedToOtherObject") == 0)
105 else if (motionModelName.compare(
"KBM") == 0)
109 else if (motionModelName.empty())
121armarx::LinkedPoseBasePtr
126 armarx::LinkedPoseBasePtr ret = poseAtLastLocalization;
Implements a Variant type for timestamps.
armarx::LinkedPoseBasePtr getPredictedPoseAtStartOfCurrentLocalization(const Ice::Current &=Ice::emptyCurrent) override
std::recursive_mutex motionPredictionLock
armarx::LinkedPoseBasePtr getPredictedPose(const Ice::Current &=Ice::emptyCurrent) override
MultivariateNormalDistributionBasePtr getUncertainty(const Ice::Current &=Ice::emptyCurrent) override
armarx::LinkedPoseBasePtr getPoseAtLastLocalisation(const Ice::Current &=Ice::emptyCurrent) override
virtual std::string getMotionModelName()
virtual armarx::LinkedPosePtr getPredictedPoseInternal()=0
MultivariateNormalDistributionBasePtr getUncertaintyAtStartOfCurrentLocalization(const Ice::Current &=Ice::emptyCurrent) override
virtual MultivariateNormalDistributionBasePtr getUncertaintyInternal()=0
void savePredictedPoseAtStartOfCurrentLocalization(const Ice::Current &=Ice::emptyCurrent) override
@ eMotionModelStaticObject
@ eMotionModelAttachedToOtherObject
static EMotionModelType getMotionModelTypeByName(std::string motionModelName)
void setPoseAtLastLocalisation(const armarx::LinkedPoseBasePtr &poseAtLastLocalization, const armarx::PoseBasePtr &globalRobotPoseAtLastLocalization, const MultivariateNormalDistributionBasePtr &uncertaintyAtLastLocalization, const Ice::Current &=Ice::emptyCurrent) override
#define ARMARX_WARNING_S
The logging level for unexpected behaviour, but not a serious problem.
IceInternal::Handle< LinkedPose > LinkedPosePtr
::IceInternal::ProxyHandle<::IceProxy::armarx::RobotStateComponentInterface > RobotStateComponentInterfacePrx