Request ID (skeleton)
[platform/core/connectivity/zigbee-manager.git] / zigbee-daemon / zigbee-lib / include / zblib_driver_custom.h
index dd7e964..6f172f6 100644 (file)
  * limitations under the License.
  */
 
-#ifndef __ZIGBEE_LIB_CUSTOM_H__
-#define __ZIGBEE_LIB_CUSTOM_H__
+#ifndef __ZIGBEE_LIB_DRIVER_CUSTOM_H__
+#define __ZIGBEE_LIB_DRIVER_CUSTOM_H__
 
 /**< ZigBee 'custom' driver operations */
 typedef struct {
-       gboolean (*aps_send)(ZigBeeDriver *driver);
-       gboolean (*zcl_send)(ZigBeeDriver *driver);
-       gboolean (*send_to_local)(ZigBeeDriver *driver);
+       gboolean (*aps_send)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*zcl_send)(ZigBeeDriver *driver, guint request_id);
+       gboolean (*send_to_local)(ZigBeeDriver *driver, guint request_id);
 } ZblibDriverCustomOps_t;
 
+/**< ZigBee 'custom' ops IDs */
+typedef enum {
+       ZBLIB_CUSTOM_OPS_APS_SEND = 1, /**< Aps send */
+       ZBLIB_CUSTOM_OPS_ZCL_SEND, /**< Zcl send */
+       ZBLIB_CUSTOM_OPS_SEND_TO_LOCAL, /**< Send to local */
+} ZblibCustomOps_e;
+
 /* ZigBee 'custom' driver APIs */
 ZigBeeDriver *zblib_driver_custom_new(ZigBeePlugin *plugin,
        const gchar *driver_name,
        ZblibDriverCustomOps_t *ops);
 void zblib_driver_custom_free(ZigBeeDriver *driver);
 
-#endif /* __ZIGBEE_LIB_CUSTOM_H__ */
+#endif /* __ZIGBEE_LIB_DRIVER_CUSTOM_H__ */