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 #include "zigbee_service_interface_common.h"
21 static gboolean on_level_control_move_to_level(ZigbeeLevel_control *level_control_object,
22 GDBusMethodInvocation *invocation,
29 ZigBeeService *service = (ZigBeeService *)user_data;
31 NOT_USED(level_control_object);
41 * Create and send request for processing
47 static gboolean on_level_control_move(ZigbeeLevel_control *level_control_object,
48 GDBusMethodInvocation *invocation,
55 ZigBeeService *service = (ZigBeeService *)user_data;
57 NOT_USED(level_control_object);
67 * Create and send request for processing
73 static gboolean on_level_control_step(ZigbeeLevel_control *level_control_object,
74 GDBusMethodInvocation *invocation,
79 gshort transition_time,
82 ZigBeeService *service = (ZigBeeService *)user_data;
84 NOT_USED(level_control_object);
91 NOT_USED(transition_time);
95 * Create and send request for processing
101 static gboolean on_level_control_move_to_level_with_on_off(ZigbeeLevel_control *level_control_object,
102 GDBusMethodInvocation *invocation,
109 ZigBeeService *service = (ZigBeeService *)user_data;
111 NOT_USED(level_control_object);
112 NOT_USED(invocation);
117 NOT_USED(transition);
121 * Create and send request for processing
127 static gboolean on_level_control_move_with_on_off(ZigbeeLevel_control *level_control_object,
128 GDBusMethodInvocation *invocation,
135 ZigBeeService *service = (ZigBeeService *)user_data;
137 NOT_USED(level_control_object);
138 NOT_USED(invocation);
147 * Create and send request for processing
153 static gboolean on_level_control_step_with_on_off(ZigbeeLevel_control *level_control_object,
154 GDBusMethodInvocation *invocation,
159 gshort transition_time,
162 ZigBeeService *service = (ZigBeeService *)user_data;
164 NOT_USED(level_control_object);
165 NOT_USED(invocation);
171 NOT_USED(transition_time);
175 * Create and send request for processing
181 static gboolean on_level_control_stop(ZigbeeLevel_control *level_control_object,
182 GDBusMethodInvocation *invocation,
187 ZigBeeService *service = (ZigBeeService *)user_data;
189 NOT_USED(level_control_object);
190 NOT_USED(invocation);
197 * Create and send request for processing
203 gboolean zigbee_service_dbus_interface_level_control_init(ZigBeeService *service,
204 ZigbeeObjectSkeleton *zigbee_object)
206 ZigbeeLevel_control *level_control_object;
208 if (NULL == service) {
209 Z_LOGE("service is NULL");
213 level_control_object = zigbee_level_control_skeleton_new();
214 zigbee_object_skeleton_set_level_control(zigbee_object, level_control_object);
215 g_object_unref(level_control_object);
217 Z_LOGI("level_control_object: [%p]", level_control_object);
220 * Register signal handlers for 'level_control' interface
222 g_signal_connect(level_control_object,
223 "handle-move-to-level",
224 G_CALLBACK(on_level_control_move_to_level), service);
226 g_signal_connect(level_control_object,
228 G_CALLBACK(on_level_control_move), service);
230 g_signal_connect(level_control_object,
232 G_CALLBACK(on_level_control_step), service);
234 g_signal_connect(level_control_object,
235 "handle-move-to-level-with-on-off",
236 G_CALLBACK(on_level_control_move_to_level_with_on_off), service);
238 g_signal_connect(level_control_object,
239 "handle-move-with-on-off",
240 G_CALLBACK(on_level_control_move_with_on_off), service);
242 g_signal_connect(level_control_object,
243 "handle-step-with-on-off",
244 G_CALLBACK(on_level_control_step_with_on_off), service);
246 g_signal_connect(level_control_object,
248 G_CALLBACK(on_level_control_stop), service);