1/*
2 $License:
3    Copyright (C) 2011-2012 InvenSense Corporation, All Rights Reserved.
4    See included License.txt for License information.
5 $
6 */
7#ifndef INV_MESSAGE_LAYER_H__
8#define INV_MESSAGE_LAYER_H__
9
10#include "mltypes.h"
11
12#ifdef __cplusplus
13extern "C" {
14#endif
15
16/* Level 0 Type Messages */
17/** A motion event has occured */
18#define INV_MSG_MOTION_EVENT                (0x01)
19/** A no motion event has occured */
20#define INV_MSG_NO_MOTION_EVENT             (0x02)
21/** A setting of the gyro bias has occured */
22#define INV_MSG_NEW_GB_EVENT                (0x04)
23/** A setting of the compass bias has occured */
24#define INV_MSG_NEW_CB_EVENT                (0x08)
25/** A setting of the accel bias has occured */
26#define INV_MSG_NEW_AB_EVENT                (0x10)
27/** Sensor fusion has switched from 9- to 6-axes
28    because of a magnetic disturbance */
29#define INV_MSG_6X_SF_EVENT    (0x020)
30/** Compass accuracy has dropped has dropped to 0
31    because of a magnetic disturbance */
32#define INV_MSG_HEADING_NOT_ACCURATE_EVENT  (0x40)
33/** A setting of the factory gyro bias has occured */
34#define INV_MSG_NEW_FGB_EVENT            (0x80)
35
36void inv_set_message(long set, long clear, int level);
37long inv_get_message_level_0(int clear);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif  // INV_MESSAGE_LAYER_H__
44