nochanges
Dependents: BLE_Acceleration_Statejudging
Fork of nRF51822 by
nordic/nrf-sdk/sd_common/ant_stack_handler_types.h@638:6efcf74f000d, 2016-06-09 (annotated)
- Committer:
- MonroeLee
- Date:
- Thu Jun 09 05:15:47 2016 +0000
- Revision:
- 638:6efcf74f000d
- Parent:
- 37:c29c330d942c
no changes
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bogdanm | 0:eff01767de02 | 1 | /* Copyright (c) 2013 Nordic Semiconductor. All Rights Reserved. |
bogdanm | 0:eff01767de02 | 2 | * |
bogdanm | 0:eff01767de02 | 3 | * The information contained herein is property of Nordic Semiconductor ASA. |
bogdanm | 0:eff01767de02 | 4 | * Terms and conditions of usage are described in detail in NORDIC |
bogdanm | 0:eff01767de02 | 5 | * SEMICONDUCTOR STANDARD SOFTWARE LICENSE AGREEMENT. |
bogdanm | 0:eff01767de02 | 6 | * |
bogdanm | 0:eff01767de02 | 7 | * Licensees are granted free, non-transferable use of the information. NO |
bogdanm | 0:eff01767de02 | 8 | * WARRANTY of ANY KIND is provided. This heading must NOT be removed from |
bogdanm | 0:eff01767de02 | 9 | * the file. |
bogdanm | 0:eff01767de02 | 10 | * |
bogdanm | 0:eff01767de02 | 11 | */ |
bogdanm | 0:eff01767de02 | 12 | |
bogdanm | 0:eff01767de02 | 13 | /**@file |
bogdanm | 0:eff01767de02 | 14 | * |
bogdanm | 0:eff01767de02 | 15 | * @defgroup ant_stack_handler_types Types definitions for ANT support in SoftDevice handler. |
bogdanm | 0:eff01767de02 | 16 | * @{ |
Rohit Grover |
37:c29c330d942c | 17 | * @ingroup softdevice_handler |
bogdanm | 0:eff01767de02 | 18 | * @brief This file contains the declarations of types required for ANT stack support. These |
bogdanm | 0:eff01767de02 | 19 | * types will be defined when the preprocessor define ANT_STACK_SUPPORT_REQD is defined. |
bogdanm | 0:eff01767de02 | 20 | */ |
bogdanm | 0:eff01767de02 | 21 | |
bogdanm | 0:eff01767de02 | 22 | #ifndef ANT_STACK_HANDLER_TYPES_H__ |
bogdanm | 0:eff01767de02 | 23 | #define ANT_STACK_HANDLER_TYPES_H__ |
bogdanm | 0:eff01767de02 | 24 | |
bogdanm | 0:eff01767de02 | 25 | #ifdef ANT_STACK_SUPPORT_REQD |
bogdanm | 0:eff01767de02 | 26 | |
bogdanm | 0:eff01767de02 | 27 | #include <stdlib.h> |
bogdanm | 0:eff01767de02 | 28 | |
bogdanm | 0:eff01767de02 | 29 | #define ANT_STACK_EVT_MSG_BUF_SIZE 32 /**< Size of ANT event message buffer. This will be provided to the SoftDevice while fetching an event. */ |
bogdanm | 0:eff01767de02 | 30 | #define ANT_STACK_EVT_STRUCT_SIZE (sizeof(ant_evt_t)) /**< Size of the @ref ant_evt_t structure. This will be used by the @ref softdevice_handler.h to internal event buffer size needed. */ |
bogdanm | 0:eff01767de02 | 31 | |
bogdanm | 0:eff01767de02 | 32 | /**@brief ANT stack event type. */ |
bogdanm | 0:eff01767de02 | 33 | typedef struct |
bogdanm | 0:eff01767de02 | 34 | { |
bogdanm | 0:eff01767de02 | 35 | uint8_t channel; /**< Channel number. */ |
bogdanm | 0:eff01767de02 | 36 | uint8_t event; /**< Event code. */ |
bogdanm | 0:eff01767de02 | 37 | uint8_t evt_buffer[ANT_STACK_EVT_MSG_BUF_SIZE]; /**< Event message buffer. */ |
bogdanm | 0:eff01767de02 | 38 | } ant_evt_t; |
bogdanm | 0:eff01767de02 | 39 | |
bogdanm | 0:eff01767de02 | 40 | /**@brief Application ANT stack event handler type. */ |
bogdanm | 0:eff01767de02 | 41 | typedef void (*ant_evt_handler_t) (ant_evt_t * p_ant_evt); |
bogdanm | 0:eff01767de02 | 42 | |
bogdanm | 0:eff01767de02 | 43 | /**@brief Function for registering for ANT events. |
bogdanm | 0:eff01767de02 | 44 | * |
bogdanm | 0:eff01767de02 | 45 | * @details The application should use this function to register for receiving ANT events from |
bogdanm | 0:eff01767de02 | 46 | * the SoftDevice. If the application does not call this function, then any ANT event |
bogdanm | 0:eff01767de02 | 47 | * that may be generated by the SoftDevice will NOT be fetched. Once the application has |
bogdanm | 0:eff01767de02 | 48 | * registered for the events, it is not possible to possible to cancel the registration. |
bogdanm | 0:eff01767de02 | 49 | * However, it is possible to register a different function for handling the events at |
bogdanm | 0:eff01767de02 | 50 | * any point of time. |
bogdanm | 0:eff01767de02 | 51 | * |
bogdanm | 0:eff01767de02 | 52 | * @param[in] ant_evt_handler Function to be called for each received ANT event. |
bogdanm | 0:eff01767de02 | 53 | * |
bogdanm | 0:eff01767de02 | 54 | * @retval NRF_SUCCESS Successful registration. |
bogdanm | 0:eff01767de02 | 55 | * @retval NRF_ERROR_NULL Null pointer provided as input. |
bogdanm | 0:eff01767de02 | 56 | */ |
bogdanm | 0:eff01767de02 | 57 | uint32_t softdevice_ant_evt_handler_set(ant_evt_handler_t ant_evt_handler); |
bogdanm | 0:eff01767de02 | 58 | |
bogdanm | 0:eff01767de02 | 59 | #else |
bogdanm | 0:eff01767de02 | 60 | |
bogdanm | 0:eff01767de02 | 61 | // The ANT Stack support is not required. |
bogdanm | 0:eff01767de02 | 62 | |
bogdanm | 0:eff01767de02 | 63 | #define ANT_STACK_EVT_STRUCT_SIZE 0 /**< Since the ANT stack support is not required, this is equated to 0, so that the @ref softdevice_handler.h can compute the internal event buffer size without having to care for ANT events.*/ |
bogdanm | 0:eff01767de02 | 64 | |
bogdanm | 0:eff01767de02 | 65 | #endif // ANT_STACK_SUPPORT_REQD |
bogdanm | 0:eff01767de02 | 66 | |
bogdanm | 0:eff01767de02 | 67 | #endif // ANT_STACK_HANDLER_TYPES_H__ |
bogdanm | 0:eff01767de02 | 68 | |
bogdanm | 0:eff01767de02 | 69 | /** @} */ |