23 #include <Eigen/Dense>
24 #include <Eigen/Geometry>
28 #include <sensor_fusion_comm/ExtState.h>
29 #include <sensor_fusion_comm/DoubleArrayStamped.h>
30 #include <geometry_msgs/PoseWithCovarianceStamped.h>
37 template<
typename type_T,
int name_T,
int STATETYPE,
int OPTIONS>
55 sizeInState_ = msf_tmp::StateLengthForType<const StateVar_T<type_T, name_T>&>::value
57 typedef Eigen::Matrix<double, sizeInCorrection_, sizeInCorrection_>
Q_T;
67 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
74 template<
typename StateSeq_T,
typename StateDef_T>
88 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
93 msf_tmp::CorrectionStateLengthForType>::value,
95 msf_tmp::StateLengthForType>::value,
97 msf_tmp::CoreStateLengthForType>::value,
99 msf_tmp::PropagatedCoreStateLengthForType>::value,
101 StateSequence_T, msf_tmp::PropagatedCoreErrorStateLengthForType>::value
112 inline typename boost::fusion::result_of::at_c<StateSequence_T, INDEX>::type
122 typename boost::fusion::result_of::at_c<StateSequence_T, INDEX>::type>::result_t::value_t&
136 Eigen::Matrix<double, 3, 1>
w_m;
137 Eigen::Matrix<double, 3, 1>
a_m;
156 const Eigen::Matrix<double, nErrorStatesAtCompileTime, 1>& correction);
164 typename boost::fusion::result_of::at_c<StateSequence_T, INDEX>::type>::result_t::Q_T&
173 typename boost::fusion::result_of::at_c<StateSequence_T, INDEX>::type>::result_t::Q_T&
192 geometry_msgs::PoseWithCovariance::_covariance_type & cov);
198 void toPoseMsg(geometry_msgs::PoseWithCovarianceStamped & pose);
210 void toFullStateMsg(sensor_fusion_comm::DoubleArrayStamped & state);
216 void toCoreStateMsg(sensor_fusion_comm::DoubleArrayStamped & state);
221 Eigen::Matrix<double, nCoreStatesAtCompileTime, 1>
toEigenVector();
227 std::vector<std::tuple<int, int, int> >& vec);
245 typename boost::fusion::result_of::at_c<StateSequence_T, INDEX>::type>::result_t::value_t&
254 typename boost::fusion::result_of::at_c<StateSequence_T, INDEX>::type>::result_t
264 typename boost::fusion::result_of::at_c<StateSequence_T, INDEX>::type>::result_t::value_t& newvalue);
278 template<
typename stateSequence_T,
typename stateDefinition_T>
287 return (lhs.time_ < rhs.time_);