29 #ifndef HECTOR_POSE_ESTIMATION_STATE_H 30 #define HECTOR_POSE_ESTIMATION_STATE_H 34 #include <boost/function.hpp> 35 #include <boost/shared_ptr.hpp> 36 #include <boost/weak_ptr.hpp> 83 virtual bool valid()
const;
97 virtual void update(
const Vector &vector_update);
119 virtual ConstRateType
getRate()
const;
125 template <
typename Derived>
void setOrientation(
const Eigen::MatrixBase<Derived>& orientation);
130 template <
typename Derived>
void setRate(
const Eigen::MatrixBase<Derived>&
rate);
138 void getEuler(
double &roll,
double &pitch,
double &yaw)
const;
197 mutable RotationMatrix
R_;
231 #include <hector_pose_estimation/state.inl> 233 #endif // HECTOR_POSE_ESTIMATION_STATE_H OrientationType orientationPart()
boost::shared_ptr< SubState_< SubVectorDimension, SubCovarianceDimension > > getSubState(const Model *model) const
boost::shared_ptr< SubState_< SubVectorDimension, SubCovarianceDimension > > addSubState(const std::string &name=std::string())
VectorBlock< Vector, 3 > AccelerationType
std::vector< SubStatePtr > SubStates
void setOrientation(const Quaternion &orientation)
AccelerationType accelerationPart()
virtual const boost::shared_ptr< OrientationStateType > & orientation() const
SymmetricMatrix Covariance
Matrix_< 3, 3 >::type RotationMatrix
VectorBlock< const Vector, 3 > ConstAccelerationType
virtual BaseState & base()
boost::function< bool(SystemStatus &)> SystemStatusCallback
SubState_< 3, 3 > VelocityStateType
PositionType positionPart()
std::map< std::string, SubStateWPtr > substates_by_name_
virtual ConstRateType getRate() const
void setYaw(const Quaternion &orientation)
const State::RotationMatrix & R() const
virtual ConstVelocityType getVelocity() const
boost::shared_ptr< AccelerationStateType > acceleration_
SystemStatus measurement_status_
virtual const boost::shared_ptr< PositionStateType > & position() const
virtual ConstOrientationType getOrientation() const
Block< const Covariance::Base > ConstCovarianceBlock
void setRate(const Eigen::MatrixBase< Derived > &rate)
SubState_< 4, 3 > OrientationStateType
virtual void updateOrientation(const ColumnVector3 &rotation_vector)
VectorBlock< Vector, 3 > VelocityType
ColumnVector3 getEuler() const
boost::shared_ptr< PositionStateType > position_
Vector fake_acceleration_
Eigen::Quaternion< ScalarType > Quaternion
virtual const Covariance & getCovariance() const
SubState_< 3, 3 > RateStateType
virtual const BaseState & base() const
Eigen::DenseIndex IndexType
void setVelocity(const Eigen::MatrixBase< Derived > &velocity)
VectorBlock< Vector, 3 > RateType
const SubStates & getSubStates() const
boost::shared_ptr< BaseState > base_
virtual IndexType getCovarianceDimension() const
virtual const Vector & getVector() const
boost::shared_ptr< VelocityStateType > velocity_
std::vector< SystemStatusCallback > status_callbacks_
virtual bool inSystemStatus(SystemStatus test_status) const
SubState_< 3, 3 > AccelerationStateType
ColumnVector_< Dynamic >::type ColumnVector
VelocityType velocityPart()
unsigned int SystemStatus
void setPosition(const Eigen::MatrixBase< Derived > &position)
boost::shared_ptr< RateStateType > rate_
VectorBlock< Vector, 4 > OrientationType
virtual const boost::shared_ptr< VelocityStateType > & velocity() const
virtual bool updateSystemStatus(SystemStatus set, SystemStatus clear)
SystemStatus system_status_
VectorBlock< Vector, 3 > PositionType
virtual IndexType getVectorDimension() const
virtual SystemStatus getSystemStatus() const
virtual bool setMeasurementStatus(SystemStatus new_status)
VectorBlock< Vector > VectorSegment
virtual bool valid() const
Block< Covariance::Base > CovarianceBlock
virtual ConstAccelerationType getAcceleration() const
void setTimestamp(const ros::Time ×tamp)
VectorBlock< const Vector, 4 > ConstOrientationType
void getRotationMatrix(RotationMatrix &R) const
VectorBlock< const Vector > ConstVectorSegment
virtual bool setSystemStatus(SystemStatus new_status)
virtual const boost::shared_ptr< RateStateType > & rate() const
VectorBlock< const Vector, 3 > ConstRateType
void setAcceleration(const Eigen::MatrixBase< Derived > &acceleration)
std::map< const Model *, SubStateWPtr > substates_by_model_
Matrix_< Dynamic, Dynamic >::type Matrix
void setRollPitch(const Quaternion &orientation)
VectorBlock< const Vector, 3 > ConstPositionType
virtual void update(const Vector &vector_update)
SubState_< 3, 3 > PositionStateType
virtual SystemStatus getMeasurementStatus() const
const ros::Time & getTimestamp() const
virtual bool updateMeasurementStatus(SystemStatus set, SystemStatus clear)
SymmetricMatrix_< Dynamic >::type SymmetricMatrix
ColumnVector_< 3 >::type ColumnVector3
boost::shared_ptr< OrientationStateType > orientation_
virtual ConstPositionType getPosition() const
VectorBlock< const Vector, 3 > ConstVelocityType
virtual const boost::shared_ptr< AccelerationStateType > & acceleration() const
virtual void addSystemStatusCallback(const SystemStatusCallback &callback)
VectorBlock< const Vector, Size > getSegment(IndexType start) const