* limitations under the License.
*/
-#ifndef __ZIGBEE_LIB_ZCL_GROUP_H__
-#define __ZIGBEE_LIB_ZCL_GROUP_H__
+#ifndef __ZIGBEE_LIB_DRIVER_ZCL_GROUP_H__
+#define __ZIGBEE_LIB_DRIVER_ZCL_GROUP_H__
/**< ZigBee 'Zcl group' driver operations */
typedef struct {
- gboolean (*add_group)(ZigBeeDriver *driver);
- gboolean (*view_group)(ZigBeeDriver *driver);
- gboolean (*get_group_membership)(ZigBeeDriver *driver);
- gboolean (*remove_group)(ZigBeeDriver *driver);
- gboolean (*remove_all_group)(ZigBeeDriver *driver);
- gboolean (*add_group_if_identifying)(ZigBeeDriver *driver);
+ gboolean (*add_group)(ZigBeeDriver *driver, guint request_id);
+ gboolean (*view_group)(ZigBeeDriver *driver, guint request_id);
+ gboolean (*get_group_membership)(ZigBeeDriver *driver, guint request_id);
+ gboolean (*remove_group)(ZigBeeDriver *driver, guint request_id);
+ gboolean (*remove_all_group)(ZigBeeDriver *driver, guint request_id);
+ gboolean (*add_group_if_identifying)(ZigBeeDriver *driver, guint request_id);
} ZblibDriverZclGroupOps_t;
+/**< ZigBee 'Zcl group' ops IDs */
+typedef enum {
+ ZBLIB_ZCL_GROUP_OPS_ADD_GROUP = 1, /**< Move add group */
+ ZBLIB_ZCL_GROUP_OPS_VIEW_GROUP, /**< View group */
+ ZBLIB_ZCL_GROUP_OPS_GET_GROUP_MEMBERSHIP, /**< Get group membership */
+ ZBLIB_ZCL_GROUP_OPS_REMOVE_GROUP, /**< Remove group */
+ ZBLIB_ZCL_GROUP_OPS_REMOVE_ALL_GROUP, /**< Remove all group */
+ ZBLIB_ZCL_GROUP_OPS_ADD_GROUP_IF_IDENTIFYING, /**< Add group if identifying */
+} ZblibZclGroupOps_e;
+
/* ZigBee 'Zcl group' driver APIs */
ZigBeeDriver *zblib_driver_zcl_group_new(ZigBeePlugin *plugin,
const gchar *driver_name,
ZblibDriverZclGroupOps_t *ops);
void zblib_driver_zcl_group_free(ZigBeeDriver *driver);
-#endif /* __ZIGBEE_LIB_ZCL_GROUP_H__ */
+#endif /* __ZIGBEE_LIB_DRIVER_ZCL_GROUP_H__ */