Base patch (skeleton code)
[platform/core/connectivity/zigbee-manager.git] / zigbee-daemon / zigbee-interface / src / zigbee_service_interface_common.h
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd. All rights reserved.
3  *
4  * Contact: Suresh Kumar N (suresh.n@samsung.com)
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */
18
19 #ifndef __ZIGBEE_SERVICE_INTERFACE_COMMON_H__
20 #define __ZIGBEE_SERVICE_INTERFACE_COMMON_H__
21
22 #include <stdio.h>
23 #include <stdlib.h>
24 #include <string.h>
25
26 #include <glib.h>
27 #include <gio/gio.h>
28
29 #include <zblib.h>
30
31 #include "zigbee_generated_code.h"
32
33 #include "zigbee_service_dbus_interface_service.h"
34 #include "zigbee_service_dbus_interface_on_off.h"
35 #include "zigbee_service_dbus_interface_door_lock.h"
36 #include "zigbee_service_dbus_interface_level_control.h"
37 #include "zigbee_service_dbus_interface_thermostat.h"
38 #include "zigbee_service_dbus_interface_fan_control.h"
39 #include "zigbee_service_dbus_interface_alarm.h"
40 #include "zigbee_service_dbus_interface_mfglib_control.h"
41 #include "zigbee_service_dbus_interface_zclglobal_control.h"
42 #include "zigbee_service_dbus_interface_zdodev_control.h"
43 #include "zigbee_service_dbus_interface_zclbasic_control.h"
44 #include "zigbee_service_dbus_interface_zclidentify_control.h"
45 #include "zigbee_service_dbus_interface_zclias_control.h"
46 #include "zigbee_service_dbus_interface_zcl_poll_control.h"
47 #include "zigbee_service_dbus_interface_zcl_group.h"
48 #include "zigbee_service_dbus_interface_zcl_scene.h"
49 #include "zigbee_service_dbus_interface_zdo_bind.h"
50 #include "zigbee_service_dbus_interface_zcl_color.h"
51 #include "zigbee_service_dbus_interface_custom.h"
52
53 /**< ZigBee D-BUS service*/
54 #define ZIGBEE_DBUS_SERVICE             "org.tizen.zigbee"
55
56 /**< ZigBee D-BUS service path */
57 #define ZIGBEE_DBUS_PATH                "/org/tizen/zigbee"
58
59 #define NOT_USED(var) ((var) = (var))
60
61 /**< ZigBee D-BUS interface custom data */
62 typedef struct {
63         GDBusObjectManagerServer *manager; /**< ZigBee object */
64         ZigbeeManager *zigbee_mgr;
65         GHashTable *objects; /**< ZigBee D-BUS object(s) */
66
67         gint bus_id; /**< ZigBee D-BUS ID */
68
69         gboolean name_acquired; /**< ZigBee D-BUS name acquired */
70         gboolean sevice_interface_init_complete; /**< ZigBee D-BUS service init completed */
71
72         gboolean zigbee_state; /**< ZigBee service state */
73 } ZigbeeCustomData_t;
74
75 #endif /* __ZIGBEE_SERVICE_INTERFACE_COMMON_H__ */