Request ID (skeleton)
[platform/core/connectivity/zigbee-manager.git] / zigbee-daemon / zigbee-lib / include / zblib_driver_zclglobal_control.h
index c65c6b3..f027faa 100644 (file)
  * limitations under the License.
  */
 
-#ifndef __ZIGBEE_LIB_ZCLGLOBAL_CONTROL_H__
-#define __ZIGBEE_LIB_ZCLGLOBAL_CONTROL_H__
+#ifndef __ZIGBEE_LIB_DRIVER_ZCLGLOBAL_CONTROL_H__
+#define __ZIGBEE_LIB_DRIVER_ZCLGLOBAL_CONTROL_H__
 
 /**< ZigBee 'Zclglobal control' driver operations */
 typedef struct {
-       gboolean (*read_attributes_req)(ZigBeeDriver *driver);
-       gboolean (*write_attributes_req)(ZigBeeDriver *driver);
-       gboolean (*write_attributes_undivided_req)(ZigBeeDriver *driver);
-       gboolean (*write_attributes_no_resp)(ZigBeeDriver *driver);
-       gboolean (*write_attributes_structured)(ZigBeeDriver *driver);
-       gboolean (*read_attributes_structured)(ZigBeeDriver *driver);
-       gboolean (*configure_reporting_req)(ZigBeeDriver *driver);
-       gboolean (*read_configure_reporting)(ZigBeeDriver *driver);
-       gboolean (*discover_attributes)(ZigBeeDriver *driver);
-       gboolean (*discover_attributes_extended)(ZigBeeDriver *driver);
-       gboolean (*discover_commands_received)(ZigBeeDriver *driver);
-       gboolean (*discover_commands_generated)(ZigBeeDriver *driver);
+       gboolean (*read_attributes_req)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*write_attributes_req)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*write_attributes_undivided_req)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*write_attributes_no_resp)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*write_attributes_structured)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*read_attributes_structured)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*configure_reporting_req)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*read_configure_reporting)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*discover_attributes)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*discover_attributes_extended)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*discover_commands_received)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*discover_commands_generated)(ZigBeeDriver *driver, guint request_id);
 } ZblibDriverZclglobalControlOps_t;
 
+/**< ZigBee 'Zclglobal control' ops IDs */
+typedef enum {
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_READ_ATTRIBUTES_REQ = 1, /**< Read attributes req */
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_WRITE_ATTRIBUTES_REQ, /**< Write attributes req */
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_WRITE_ATTRIBUTES_UNDIVIDED_REQ, /**< Write attributes undivided req */
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_WRITE_ATTRIBUTES_NO_RESP, /**< Write attributes no resp */
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_WRITE_ATTRIBUTES_STRUCTURED, /**< Write attributes structured */
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_READ_ATTRIBUTES_STRUCTURED, /**< Read attributes structured */
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_CONFIGURE_REPORTING_REQ, /**< Configure reporting req */
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_READ_CONFIGURE_REPORTING, /**< Read configure reporting */
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_DISCOVER_ATTRIBUTES, /**< Discover attributes */
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_DISCOVER_ATTRIBUTES_EXTENDED, /**< Discover attributes extended */
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_DISCOVER_COMMANDS_RECEIVED, /**< Discover commands received */
+       ZBLIB_ZCLGLOBAL_CONTROL_OPS_DISCOVER_COMMANDS_GENERATED, /**< Discover commands generated */
+} ZblibZclglobalControlOps_e;
+
 /* ZigBee 'Zclglobal control' driver APIs */
 ZigBeeDriver *zblib_driver_zclglobal_control_new(ZigBeePlugin *plugin,
        const gchar *driver_name,
        ZblibDriverZclglobalControlOps_t *ops);
 void zblib_driver_zclglobal_control_free(ZigBeeDriver *driver);
 
-#endif /* __ZIGBEE_LIB_ZCLGLOBAL_CONTROL_H__ */
+#endif /* __ZIGBEE_LIB_DRIVER_ZCLGLOBAL_CONTROL_H__ */