/* * */ #include #include #include #include #include #include #if _MSC_VER >= 1400 #define sprintf sprintf_s #endif using namespace std; typedef double accuracy; #include "common.h" #include "INS_GPS2.h" #include "INS_GPS_BE.h" #include "sensor/MEMS.h" #include "util/logger.h" typedef MEMS_Accelerometer mems_a; typedef MEMS_Gyro mems_g; //#define DUMP_UPDATE #define DUMP_CORRECT //#define BIAS_ON //#define COV_OUT #define DUMP_TARGET 9 const char *label[DUMP_TARGET] = {"東経[秒]", "北緯[秒]", "高度[m]", "北方向速度[m/s]", "東方向速度[m/s]", "重力方向速度[m/s]", "Ψ[deg]", "Θ[deg]", "Φ[deg]"}; #ifdef BIAS_ON typedef INS_GPS2_BiasEstimated NAV; #else typedef INS_GPS2 NAV; #endif class CovObserver : public Loggable{ protected: const NAV &m_nav; public: CovObserver(const NAV &nav) : m_nav(nav){} ~CovObserver(){} void inspect(ostream &out) const { NAV &nav(*(const_cast