Request ID (skeleton)
[platform/core/connectivity/zigbee-manager.git] / zigbee-daemon / zigbee-lib / include / zblib_driver_level_control.h
index 0d75684..91fb727 100644 (file)
  * limitations under the License.
  */
 
-#ifndef __ZIGBEE_LIB_LEVEL_CONTROL_H__
-#define __ZIGBEE_LIB_LEVEL_CONTROL_H__
+#ifndef __ZIGBEE_LIB_DRIVER_LEVEL_CONTROL_H__
+#define __ZIGBEE_LIB_DRIVER_LEVEL_CONTROL_H__
 
 /**< ZigBee 'level control' driver operations */
 typedef struct {
-       gboolean (*move_to_level)(ZigBeeDriver *driver);
-       gboolean (*move)(ZigBeeDriver *driver);
-       gboolean (*step)(ZigBeeDriver *driver);
-       gboolean (*move_to_level_with_on_off)(ZigBeeDriver *driver);
-       gboolean (*move_with_on_off)(ZigBeeDriver *driver);
-       gboolean (*step_with_on_off)(ZigBeeDriver *driver);
-       gboolean (*stop)(ZigBeeDriver *driver);
+       gboolean (*move_to_level)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*move)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*step)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*move_to_level_with_on_off)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*move_with_on_off)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*step_with_on_off)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*stop)(ZigBeeDriver *driver, guint request_id);
 } ZblibDriverLevelControlOps_t;
 
+/**< ZigBee 'level control' ops IDs */
+typedef enum {
+       ZBLIB_LEVEL_CONTROL_OPS_MOVE_TO_LEVEL = 1, /**< Move to level */
+       ZBLIB_LEVEL_CONTROL_OPS_MOVE, /**< Move */
+       ZBLIB_LEVEL_CONTROL_OPS_STEP, /**< Step */
+       ZBLIB_LEVEL_CONTROL_OPS_MOVE_TO_LEVEL_WITH_ON_OFF, /**< Move to level with on off */
+       ZBLIB_LEVEL_CONTROL_OPS_MOVE_WITH_ON_OFF, /**< Move with on off */
+       ZBLIB_LEVEL_CONTROL_OPS_STEP_WITH_ON_OFF, /**< Step with on off */
+       ZBLIB_LEVEL_CONTROL_OPS_STOP, /**< Stop */
+} ZblibLevelControlOps_e;
+
 /* ZigBee 'level control' driver APIs */
 ZigBeeDriver *zblib_driver_level_control_new(ZigBeePlugin *plugin,
        const gchar *driver_name,
        ZblibDriverLevelControlOps_t *ops);
 void zblib_driver_level_control_free(ZigBeeDriver *driver);
 
-#endif /* __ZIGBEE_LIB_LEVEL_CONTROL_H__ */
+#endif /* __ZIGBEE_LIB_DRIVER_LEVEL_CONTROL_H__ */