Initial commit

Dependencies:   FastPWM

Revision:
0:bb348c97df44
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed-dev-master/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F439xI/TARGET_MODULE_UBLOX_ODIN_W2/sdk/ublox-odin-w2-drivers/cb_bt_pan.h	Wed Sep 16 01:11:49 2020 +0000
@@ -0,0 +1,142 @@
+/**
+ *---------------------------------------------------------------------------
+ * Copyright (c) 2016, u-blox Malmö, All Rights Reserved
+ * SPDX-License-Identifier: LicenseRef-PBL
+ *
+ * This file and the related binary are licensed under the
+ * Permissive Binary License, Version 1.0 (the "License");
+ * you may not use these files except in compliance with the License.
+ *
+ * You may obtain a copy of the License here:
+ * LICENSE-permissive-binary-license-1.0.txt and at
+ * https://www.mbed.com/licenses/PBL-1.0
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Component   : Bluetooth PAN Data Manager
+ * File        : cb_bt_pan.h
+ *
+ * Description : Data management for PAN profile
+ *
+ *-------------------------------------------------------------------------*/
+
+#ifndef _CB_BT_PAN_H_
+#define _CB_BT_PAN_H_
+
+#include "cb_comdefs.h"
+#include "bt_types.h"
+#include "cb_bt_conn_man.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*===========================================================================
+ * DEFINES
+ *=========================================================================*/
+#define cbBTPAN_RESULT_OK                    ((cb_int32)0x00000000)
+#define cbBTPAN_RESULT_ERROR                 ((cb_int32)0x00000001)
+#define cbBTPAN_RESULT_ILLEGAL_HANDLE        ((cb_int32)0x00000002)
+#define cbBTPAN_RESULT_FLOW_STOP             ((cb_int32)0x00000003)
+#define cbBTPAN_RESULT_LINK_LOSS             ((cb_int32)0x00000004)
+
+/*===========================================================================
+ * TYPES
+ *=========================================================================*/
+typedef cb_uint32   cbBTPAN_Handle;
+
+/*---------------------------------------------------------------------------
+ * Callback to indicate that a Bnep connection has been established.
+ *
+ * @param connHandle: Connection handle
+ * @param info: Information about the connection
+ *
+ * @return None
+ *-------------------------------------------------------------------------*/
+typedef void(*cbBTPAN_ConnectEvt)             (cbBCM_Handle connHandle, cbBCM_ConnectionInfo info);
+
+/*---------------------------------------------------------------------------
+ * Callback to indicate that a Bnep connection has been disconnected.
+ *
+ * @param connHandle: Connection handle
+ *
+ * @return None
+ *-------------------------------------------------------------------------*/
+typedef void(*cbBTPAN_DisconnectEvt)          (cbBCM_Handle connHandle);
+
+/*---------------------------------------------------------------------------
+ * Callback to indicate that data has been received from remote device.
+*
+ * @param btPanHandle: PAN handle
+ * @param length: Length of the data
+ * @param pData: Pointer to the data
+ *
+ * @return None
+ *-------------------------------------------------------------------------*/
+typedef void(*cbBTPAN_DataEvt)             (cbBCM_Handle connHandle, cb_uint8 * pData, cb_uint16 length);
+
+/*---------------------------------------------------------------------------
+ * Callback to indicate that data has been taken care by PAN. New
+ * data can now be sent on this handle.
+ *
+ * @param btPanHandle: PAN handle
+ * @param result: cbBTPAN_RESULT_OK if the data sending succeeded
+ *
+ * @return None
+ *-------------------------------------------------------------------------*/
+typedef void(*cbBTPAN_DataCnf)             (cbBCM_Handle connHandle, cb_int32 result);
+
+typedef struct
+{
+    cbBTPAN_ConnectEvt     pfConnectEvt;
+    cbBTPAN_DisconnectEvt  pfDisconnectEvt;
+    cbBTPAN_DataEvt        pfDataEvt;
+    cbBTPAN_DataCnf        pfWriteCnf;
+} cbBTPAN_Callback;
+
+/*===========================================================================
+ * FUNCTIONS
+ *=========================================================================*/
+/**
+ * Initialization of Bluetooth PAN data. Called during stack
+ * initialization. Shall not be called by application.
+ *
+ * @return None
+ */
+extern void cbBTPAN_init(void);
+
+/**
+ * Registers for PAN data callbacks. Only one registration is supported.
+ *
+ * @param pDataCallback  Data callback
+ *
+ * @return cbBTPAN_RESULT_OK if successful
+ */
+extern cb_uint32 cbBTPAN_registerDataCallback(cbBTPAN_Callback * pDataCallback);
+
+/*---------------------------------------------------------------------------
+ * Sends data to the remote device. Note that you have to wait for the
+ * confirmation callback (cbBTPAN_DataCnf) before calling another cbBTPAN_reqData.
+ *
+ * @param connHandle: Connection handle
+ * @param pBuf: Pointer to the data
+ * @param bufSize: Length of the data
+ *
+ * @return cbBTPAN_RESULT_OK if successful
+ *-------------------------------------------------------------------------*/
+extern cb_int32 cbBTPAN_reqData(cbBCM_Handle connHandle, cb_uint8 * pBuf, cb_uint16 bufSize);
+
+/*---------------------------------------------------------------------------
+ * Gets the max frame size that can be sent/received with
+ * cbBTPAN_reqData/pfDataEvt
+ *
+ * @return max frame size
+ *-------------------------------------------------------------------------*/
+extern cb_int32 cbBTPAN_getMaxFrameSize(void);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif //_cb_BT_PAN_H_