00001 #ifndef PLANE_OBSERVE_MODEL
00002 #define PLANE_OBSERVE_MODEL
00003
00004 #include "kernel/jafarException.hpp"
00005 #include "filter/observeModel.hpp"
00006 #include "jmath/jblas.hpp"
00007
00008 namespace jafar {
00009 namespace model3d {
00010
00011
00012
00013 class PlaneObserveModel : public jafar::filter::JacobianImplicitObserveModel
00014 {
00015 public:
00016
00017
00018 PlaneObserveModel(std::size_t sizeObs_,
00019 std::size_t sizeState_);
00020
00021 ~PlaneObserveModel();
00022
00023 virtual jblas::vec const& computeInnovation(const jblas::vec& x_,
00024 const jblas::vec& z_);
00025
00026 virtual void computeJacobian(const jblas::vec& x_,
00027 const jblas::vec& z_);
00028
00029
00030 jblas::vec m_h;
00031
00054 int m_nPlaneType;
00055
00056 };
00057
00058
00059 }
00060 }
00061
00062 #endif // PLANE_OBSERVE_MODEL