MotionModelAttachedToOtherObject.h
Go to the documentation of this file.
1 /*
2 * This file is part of ArmarX.
3 *
4 * ArmarX is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 * ArmarX is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * @package MemoryX::MotionModelAttachedToOtherObject
17 * @author David Schiebener ( Schiebener at kit dot edu)
18 * @date 2014
19 * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20 * GNU General Public License
21 */
22 
23 #pragma once
24 
27 
28 #include "AbstractMotionModel.h"
29 
30 
31 
32 namespace memoryx
33 {
35  virtual public AbstractMotionModel,
36  virtual public MotionModelAttachedToOtherObjectBase
37  {
38  public:
39 
40  MotionModelAttachedToOtherObject(armarx::RobotStateComponentInterfacePrx robotStateProxy, armarx::ChannelRefPtr channelRefToObjectToWhichThisIsAttached);
41 
43  {
45  }
46 
47  void setPoseAtLastLocalisation(const armarx::LinkedPoseBasePtr& poseAtLastLocalization, const armarx::PoseBasePtr& globalRobotPoseAtLastLocalization, const MultivariateNormalDistributionBasePtr& uncertaintyAtLastLocalization, const Ice::Current& c = Ice::emptyCurrent) override;
48 
49  void savePredictedPoseAtStartOfCurrentLocalization(const Ice::Current& c = Ice::emptyCurrent) override;
50  protected:
51 
53  MultivariateNormalDistributionBasePtr getUncertaintyInternal() override;
54 
55  // for the object factory
56  template <class IceBaseClass, class DerivedClass>
57  friend class armarx::GenericFactory;
59  };
61 
62 }
63 
memoryx::AbstractMotionModel::eMotionModelAttachedToOtherObject
@ eMotionModelAttachedToOtherObject
Definition: AbstractMotionModel.h:46
memoryx::MotionModelAttachedToOtherObject::setPoseAtLastLocalisation
void setPoseAtLastLocalisation(const armarx::LinkedPoseBasePtr &poseAtLastLocalization, const armarx::PoseBasePtr &globalRobotPoseAtLastLocalization, const MultivariateNormalDistributionBasePtr &uncertaintyAtLastLocalization, const Ice::Current &c=Ice::emptyCurrent) override
Definition: MotionModelAttachedToOtherObject.cpp:97
memoryx::MotionModelAttachedToOtherObject::getMotionModelType
AbstractMotionModel::EMotionModelType getMotionModelType() override
Definition: MotionModelAttachedToOtherObject.h:42
memoryx
VirtualRobot headers.
Definition: CommonPlacesTester.cpp:48
c
constexpr T c
Definition: UnscentedKalmanFilterTest.cpp:43
FactoryCollectionBase.h
memoryx::MotionModelAttachedToOtherObject::getUncertaintyInternal
MultivariateNormalDistributionBasePtr getUncertaintyInternal() override
Definition: MotionModelAttachedToOtherObject.cpp:129
memoryx::MotionModelAttachedToOtherObject::savePredictedPoseAtStartOfCurrentLocalization
void savePredictedPoseAtStartOfCurrentLocalization(const Ice::Current &c=Ice::emptyCurrent) override
Definition: MotionModelAttachedToOtherObject.cpp:142
IceInternal::Handle< ChannelRef >
memoryx::AbstractMotionModel
Definition: AbstractMotionModel.h:39
memoryx::MotionModelAttachedToOtherObject
Definition: MotionModelAttachedToOtherObject.h:34
memoryx::MotionModelAttachedToOtherObject::MotionModelAttachedToOtherObject
MotionModelAttachedToOtherObject()
Definition: MotionModelAttachedToOtherObject.h:58
AbstractMotionModel.h
IceInternal::ProxyHandle<::IceProxy::armarx::RobotStateComponentInterface >
armarx::GenericFactory
Definition: FactoryCollectionBase.h:51
memoryx::MotionModelAttachedToOtherObject::getPredictedPoseInternal
armarx::LinkedPosePtr getPredictedPoseInternal() override
Definition: MotionModelAttachedToOtherObject.cpp:58
ChannelRef.h
memoryx::AbstractMotionModel::EMotionModelType
EMotionModelType
Definition: AbstractMotionModel.h:42