1 /* 2 * Copyright (c) 2025 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef BLUETOOTH_SPP_FFI_H 17 #define BLUETOOTH_SPP_FFI_H 18 19 #include "cj_common_ffi.h" 20 21 extern "C" { 22 struct CSppOption { 23 char* uuid; 24 bool secure; 25 int32_t type; 26 }; 27 28 FFI_EXPORT int32_t FfiBluetoothSocketSppListen(char* name, CSppOption options, int32_t* errCode); 29 FFI_EXPORT int32_t FfiBluetoothSocketSppAccept(int32_t serverSocket, int32_t* errCode); 30 FFI_EXPORT int32_t FfiBluetoothSocketSppConnect(char* deviceId, CSppOption options, int32_t* errCode); 31 FFI_EXPORT char* FfiBluetoothSocketGetDeviceId(int32_t clientSocket, int32_t* errCode); 32 FFI_EXPORT void FfiBluetoothSocketSppCloseServerSocket(int32_t socket, int32_t* errCode); 33 FFI_EXPORT void FfiBluetoothSocketSppCloseClientSocket(int32_t socket, int32_t* errCode); 34 FFI_EXPORT void FfiBluetoothSocketSppWrite(int32_t clientSocket, CArrUI8 data, int32_t* errCode); 35 FFI_EXPORT void FfiBluetoothSocketOn(char* type, int32_t clientSocket, int64_t cbId, int32_t* errCode); 36 FFI_EXPORT void FfiBluetoothSocketOff(char* type, int32_t clientSocket, int64_t cbId, int32_t* errCode); 37 } 38 39 #endif 40