diff options
Diffstat (limited to 'libsensors/mlsdk/mllite/mlstates.h')
-rw-r--r-- | libsensors/mlsdk/mllite/mlstates.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/libsensors/mlsdk/mllite/mlstates.h b/libsensors/mlsdk/mllite/mlstates.h new file mode 100644 index 0000000..cbaa610 --- /dev/null +++ b/libsensors/mlsdk/mllite/mlstates.h @@ -0,0 +1,58 @@ +/* + $License: + Copyright 2011 InvenSense, Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + $ + */ +/******************************************************************************* + * + * $Id: mlstates.h 5629 2011-06-11 03:13:08Z mcaramello $ + * + *******************************************************************************/ + +#ifndef INV_STATES_H__ +#define INV_STATES_H__ + +#include "mltypes.h" +#ifdef INV_INCLUDE_LEGACY_HEADERS +#include "mlstates_legacy.h" +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* See inv_state_transition for the transition mask */ +#define INV_STATE_SERIAL_CLOSED (0) +#define INV_STATE_SERIAL_OPENED (1) +#define INV_STATE_DMP_OPENED (2) +#define INV_STATE_DMP_STARTED (3) +#define INV_STATE_DMP_STOPPED (INV_STATE_DMP_OPENED) +#define INV_STATE_DMP_CLOSED (INV_STATE_SERIAL_OPENED) + +#define INV_STATE_NAME(x) (#x) + + typedef inv_error_t(*state_change_callback_t) (unsigned char newState); + + char *inv_state_name(unsigned char x); + inv_error_t inv_state_transition(unsigned char newState); + unsigned char inv_get_state(void); + inv_error_t inv_register_state_callback(state_change_callback_t callback); + inv_error_t inv_unregister_state_callback(state_change_callback_t callback); + inv_error_t inv_run_state_callbacks(unsigned char newState); + +#ifdef __cplusplus +} +#endif +#endif // INV_STATES_H__ |