1/*
2	quat_accuracy_monitor.h
3 $License:
4    Copyright (C) 2011-2012 InvenSense Corporation, All Rights Reserved.
5    See included License.txt for License information.
6 $
7 */
8
9/*******************************************************************************
10 *
11 * $Id:$
12 *
13 ******************************************************************************/
14
15#ifndef QUAT_ACCURARCY_MONITOR_H__
16#define QUAT_ACCURARCY_MONITOR_H__
17
18#include "mltypes.h"
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23enum accuracy_signal_type_e {
24    TYPE_NAV_QUAT,
25    TYPE_GAM_QUAT,
26    TYPE_NAV_QUAT_ADVANCED,
27    TYPE_GAM_QUAT_ADVANCED,
28    TYPE_NAV_QUAT_BASIC,
29    TYPE_GAM_QUAT_BASIC,
30    TYPE_MAG,
31    TYPE_GYRO,
32    TYPE_ACCEL,
33};
34
35inv_error_t inv_init_quat_accuracy_monitor(void);
36
37void set_accuracy_threshold(enum accuracy_signal_type_e type, double threshold);
38double get_accuracy_threshold(enum accuracy_signal_type_e type);
39void set_accuracy_weight(enum accuracy_signal_type_e type, int weight);
40int get_accuracy_weight(enum accuracy_signal_type_e type);
41
42int8_t get_accuracy_accuracy(enum accuracy_signal_type_e type);
43
44void inv_reset_quat_accuracy(void);
45double get_6axis_correction_term(void);
46double get_9axis_correction_term(void);
47int get_9axis_accuracy_state();
48
49void set_6axis_error_average(double value);
50double get_6axis_error_bound(void);
51double get_compass_correction(void);
52double get_9axis_error_bound(void);
53
54float get_confidence_interval(void);
55void set_compass_uncertainty(float value);
56
57inv_error_t inv_enable_quat_accuracy_monitor(void);
58inv_error_t inv_disable_quat_accuracy_monitor(void);
59inv_error_t inv_start_quat_accuracy_monitor(void);
60inv_error_t inv_stop_quat_accuracy_monitor(void);
61
62double get_compassNgravity(void);
63double get_init_compassNgravity(void);
64
65float inv_heading_accuracy_check(float orient[3], float *heading, int8_t *accuracy);
66
67#ifdef __cplusplus
68}
69#endif
70
71#endif // QUAT_ACCURARCY_MONITOR_H__
72