Replace glib threadpool usage with a 'dumb' thread implementation.
[platform/upstream/iotivity.git] / resource / csdk / connectivity / inc / caleutils.h
1 /* ****************************************************************
2 *
3 * Copyright 2014 Samsung Electronics All Rights Reserved.
4 *
5 *
6 *
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
10 *
11 *      http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 *
19 ******************************************************************/
20
21 /**
22  * @file
23  *
24  * This file contains the APIs for BT LE communications.
25  */
26
27 #ifndef __CA_LEUTILES_H_
28 #define __CA_LEUTILES_H_
29
30 #include "cacommon.h"
31 #include "cathreadpool.h"
32 #include "uarraylist.h"
33 #include "jni.h"
34
35 #ifdef __cplusplus
36 extern "C"
37 {
38 #endif
39
40 /**
41  * @brief   get uuid(jni object) from uuid(character)
42  * @param   env              [IN] JNI interface pointer
43  * @param   uuid             [IN] uuid(character)
44  * @return  uuid(jni object)
45  */
46 jobject CALEGetUuidFromString(JNIEnv *env, const char* uuid);
47
48 /**
49  * @brief   get parcel uuid object
50  * @param   env              [IN] JNI interface pointer
51  * @param   uuid             [IN] uuid (jni object)
52  * @return  parcel uuid object
53  */
54 jobject CALEGetParcelUuid(JNIEnv *env, jobject uuid);
55
56 /**
57  * @brief   get address from a local device
58  * @param   env              [IN] JNI interface pointer
59  * @return  local address
60  */
61 jstring CALEGetLocalDeviceAddress(JNIEnv *env);
62
63 /**
64  * @brief   get bonded list
65  * @param   env              [IN] JNI interface pointer
66  * @return  bonded list
67  */
68 jobjectArray CALEGetBondedDevices(JNIEnv *env);
69
70 /**
71  * @brief   get constants information of bluetooth state-on
72  * @param   env              [IN] JNI interface pointer
73  * @return  constants information of bluetooth state-on
74  */
75 jint CALEGetBTStateOnInfo(JNIEnv *env);
76
77 /**
78  * @brief   get bluetooth adapter state information
79  * @param   env              [IN] JNI interface pointer
80  * @return  true if the local adapter is turned on
81  */
82 jboolean CALEIsEnableBTAdapter(JNIEnv *env);
83
84 /**
85  * @brief   get address from remote device
86  * @param   env              [IN] JNI interface pointer
87  * @param   bluetoothDevice  [IN] bluetooth device object
88  * @return  remote address
89  */
90 jstring CALEGetAddressFromBTDevice(JNIEnv *env, jobject bluetoothDevice);
91
92 #ifdef __cplusplus
93 } /* extern "C" */
94 #endif
95
96 #endif
97