Providing build option to disable BLE server
[platform/upstream/iotivity.git] / resource / csdk / connectivity / src / bt_le_adapter / linux / gatt_dbus.h
1 /******************************************************************
2  *
3  * Copyright 2015 Intel Corporation All Rights Reserved.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  ******************************************************************/
18
19 #ifndef CA_BLE_LINUX_GATT_DBUS_H
20 #define CA_BLE_LINUX_GATT_DBUS_H
21
22
23 /**
24  * @name BlueZ GATT Service D-Bus Object Paths
25  *
26  * The IoTivity BlueZ GATT Service hierarchy is the following:
27  *
28  *  -> /org/iotivity/gatt/advertisement0
29  *
30  *  -> /org/iotivity/gatt/<hciX>/service0
31  *    |   - OIC GATT Service
32  *    |
33  *    -> /org/iotivity/gatt/<hciX>/service0/char0
34  *    | |   - OIC GATT Request Characteristic Value
35  *    | |
36  *    | -> /org/iotivity/gatt/<hciX>/service0/char0/desc0
37  *    |       - OIC GATT Request User Description Descriptor
38  *    |
39  *    -> /org/iotivity/gatt/<hciX>/service0/char1
40  *      |   - OIC GATT Response Characteristic Value
41  *      |
42  *      -> /org/iotivity/gatt/<hciX>/service0/char1/desc0
43  *            - OIC GATT Response User Description Descriptor
44  *
45  * where <hciX> corresponds to the bluetooth hardware adapter with
46  * which the GATT service is being registered, e.g. "hci0".
47  *
48  * @note The OIC GATT Client Characterstic Configuration Descriptor is
49  *       implicitly added to the response characteristic hierarchy by
50  *       BlueZ since its "notify" property is set.
51  */
52 //@{
53
54 /**
55  * Root object path of the GATT service hierarchy.
56  *
57  * The GATT service object manager (i.e. implementation of
58  * @c org.freedesktop.DBus.ObjectManager) is found at this object
59  * path.
60  */
61 #define CA_GATT_SERVICE_ROOT_PATH "/org/iotivity/gatt"
62
63 // ------------------------
64
65 #define CA_LE_ADVERTISEMENT_PATH "advertisement0"
66
67 // ------------------------
68
69 /// GATT service object path basename.
70 #define CA_GATT_SERVICE_PATH  "service0"
71
72 // ------------------------
73
74 /// Request GATT characteristic object path basename.
75 #define CA_GATT_REQUEST_CHRC_PATH "char0"
76
77 /// Request GATT user description descriptor object path basename.
78 #define CA_GATT_REQUEST_USER_DESC_PATH "desc0"
79
80 // ------------------------
81
82 /// Response GATT characteristic object path basename.
83 #define CA_GATT_RESPONSE_CHRC_PATH "char1"
84
85 /// Response GATT user description descriptor object path basename.
86 #define CA_GATT_RESPONSE_USER_DESC_PATH "desc0"
87 //@}
88
89 #endif // CA_BLE_LINUX_GATT_DBUS_H