10 this->robotStateProxy = robotStateProxy;
12 predictedPoseAtStartOfCurrentLocalization =
nullptr;
13 globalRobotPoseAtLastLocalization =
nullptr;
14 uncertaintyAtLastLocalization =
nullptr;
15 uncertaintyAtStartOfCurrentLocalization =
nullptr;
23 std::unique_lock lock(motionPredictionLock);
32 std::unique_lock lock(motionPredictionLock);
34 MultivariateNormalDistributionBasePtr
ret = getUncertaintyInternal();
40 const armarx::LinkedPoseBasePtr& poseAtLastLocalization,
41 const armarx::PoseBasePtr& globalRobotPoseAtLastLocalization,
42 const memoryx::MultivariateNormalDistributionBasePtr& uncertaintyAtLastLocalization,
45 std::unique_lock lock(motionPredictionLock);
46 this->poseAtLastLocalization = poseAtLastLocalization;
47 timeOfLastSuccessfulLocalization = armarx::TimestampVariantPtr::dynamicCast(timeOfLastLocalizationStart->clone());
49 if (globalRobotPoseAtLastLocalization)
51 this->globalRobotPoseAtLastLocalization = globalRobotPoseAtLastLocalization;
54 if (uncertaintyAtLastLocalization)
56 this->uncertaintyAtLastLocalization = uncertaintyAtLastLocalization;
63 std::unique_lock lock(motionPredictionLock);
65 predictedPoseAtStartOfCurrentLocalization = getPredictedPoseInternal();
66 uncertaintyAtStartOfCurrentLocalization = getUncertaintyInternal();
73 return predictedPoseAtStartOfCurrentLocalization;
79 return uncertaintyAtStartOfCurrentLocalization;
91 if (motionModelName.compare(
"Static") == 0)
93 return eMotionModelStaticObject;
95 else if (motionModelName.compare(
"RobotHand") == 0)
97 return eMotionModelRobotHand;
99 else if (motionModelName.compare(
"AttachedToOtherObject") == 0)
101 return eMotionModelAttachedToOtherObject;
103 else if (motionModelName.compare(
"KBM") == 0)
105 return eMotionModelKBM;
107 else if (motionModelName.empty())
110 return eMotionModelStaticObject;
115 return eMotionModelStaticObject;
122 std::unique_lock lock(motionPredictionLock);
124 armarx::LinkedPoseBasePtr
ret = poseAtLastLocalization;