2 * Copyright (c) 2016 Samsung Electronics Co., Ltd. All rights reserved.
4 * Contact: Suresh Kumar N (suresh.n@samsung.com)
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
10 * http://www.apache.org/licenses/LICENSE-2.0
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.
19 #ifndef __ZIGBEE_LIB_H__
20 #define __ZIGBEE_LIB_H__
28 #include <zblib_log.h>
29 #include <zblib_types.h>
30 #include <zblib_common.h>
32 #include <zigbee_service_type.h>
33 #include <zigbee_custom_type.h>
34 #include <zigbee_mfglib_control_type.h>
35 #include <zigbee_zdo_dev_control_type.h>
36 #include <zigbee_zdo_bind_type.h>
37 #include <zigbee_zcl_global_control_type.h>
38 #include <zigbee_zcl_alarm_type.h>
39 #include <zigbee_zcl_basic_type.h>
40 #include <zigbee_zcl_color_control_type.h>
41 #include <zigbee_zcl_door_lock_type.h>
42 #include <zigbee_zcl_fan_control_type.h>
43 #include <zigbee_zcl_group_type.h>
44 #include <zigbee_zcl_ias_zone_type.h>
45 #include <zigbee_zcl_identify_type.h>
46 #include <zigbee_zcl_level_control_type.h>
47 #include <zigbee_zcl_on_off_type.h>
48 #include <zigbee_zcl_poll_control_type.h>
49 #include <zigbee_zcl_scene_type.h>
50 #include <zigbee_zcl_thermostat_type.h>
52 #define NOT_USED(var) ((var) = (var))
54 /**< ZigBee module typedefs */
55 typedef struct zblib_service_type ZigBeeService;
56 typedef struct zblib_plugin_type ZigBeePlugin;
57 typedef struct zblib_driver_type ZigBeeDriver;
58 typedef struct zblib_service_interface_type ZigBeeServiceInterface;
59 typedef struct zblib_request_type ZigBeeRequest;
61 /**< ZigBee driver types */
63 ZBLIB_DRIVER_TYPE_NONE, /**< None */
64 ZBLIB_DRIVER_TYPE_SERVICE, /**< Service */
65 ZBLIB_DRIVER_TYPE_ZDO_DEV_CONTROL, /**< ZDO Dev control */
66 ZBLIB_DRIVER_TYPE_ZDO_BIND, /**< ZDO bind */
67 ZBLIB_DRIVER_TYPE_ZCL_GLOBAL_CONTROL, /**< ZCL Global control */
68 ZBLIB_DRIVER_TYPE_ZCL_ALARM, /**< ZCL Alarm */
69 ZBLIB_DRIVER_TYPE_ZCL_BASIC, /**< ZCL Basic control */
70 ZBLIB_DRIVER_TYPE_ZCL_COLOR_CONTROL, /**< ZCL color */
71 ZBLIB_DRIVER_TYPE_ZCL_DOOR_LOCK, /**< ZCL Door lock */
72 ZBLIB_DRIVER_TYPE_ZCL_FAN_CONTROL, /**< ZCL Fan control */
73 ZBLIB_DRIVER_TYPE_ZCL_GROUP, /**< ZCL group */
74 ZBLIB_DRIVER_TYPE_ZCL_IAS_ZONE, /**< ZCL IAS zone */
75 ZBLIB_DRIVER_TYPE_ZCL_IDENTIFY, /**< ZCL Identify */
76 ZBLIB_DRIVER_TYPE_ZCL_LEVEL_CONTROL, /**< ZCL Level control */
77 ZBLIB_DRIVER_TYPE_ZCL_ON_OFF, /**< ZCL On Off */
78 ZBLIB_DRIVER_TYPE_ZCL_POLL_CONTROL, /**< ZCL poll control */
79 ZBLIB_DRIVER_TYPE_ZCL_SCENE, /**< ZCL scene */
80 ZBLIB_DRIVER_TYPE_ZCL_THERMOSTAT, /**< ZCL Thermostat */
81 ZBLIB_DRIVER_TYPE_CUSTOM, /**< Custom */
82 ZBLIB_DRIVER_TYPE_MFGLIB_CONTROL, /**< Mfglib control */
86 #endif /* __ZIGBEE_LIB_H__ */