* limitations under the License.
*/
-#ifndef __ZIGBEE_LIB_THERMOSTAT_H__
-#define __ZIGBEE_LIB_THERMOSTAT_H__
+#ifndef __ZIGBEE_LIB_DRIVER_THERMOSTAT_H__
+#define __ZIGBEE_LIB_DRIVER_THERMOSTAT_H__
/**< ZigBee 'thermostat' driver operations */
typedef struct {
- gboolean (*get_local_temp)(ZigBeeDriver *driver);
- gboolean (*get_weekly_schedule)(ZigBeeDriver *driver);
- gboolean (*set_weekly_schedule)(ZigBeeDriver *driver);
- gboolean (*clear_weekly_schedule)(ZigBeeDriver *driver);
- gboolean (*setpoint_raise_lower)(ZigBeeDriver *driver);
+ gboolean (*get_local_temp)(ZigBeeDriver *driver, guint request_id);
+ gboolean (*get_weekly_schedule)(ZigBeeDriver *driver, guint request_id);
+ gboolean (*set_weekly_schedule)(ZigBeeDriver *driver, guint request_id);
+ gboolean (*clear_weekly_schedule)(ZigBeeDriver *driver, guint request_id);
+ gboolean (*setpoint_raise_lower)(ZigBeeDriver *driver, guint request_id);
} ZblibDriverThermostatOps_t;
+/**< ZigBee 'thermostat' ops IDs */
+typedef enum {
+ ZBLIB_THERMOSTAT_OPS_GET_LOCAL_TEMP = 1, /**< Get local temp */
+ ZBLIB_THERMOSTAT_OPS_GET_WEEKLY_SCHEDULE, /**< Get weekly schedule */
+ ZBLIB_THERMOSTAT_OPS_SET_WEEKLY_SCHEDULE, /**< Set weekly schedule */
+ ZBLIB_THERMOSTAT_OPS_CLEAR_WEEKLY_SCHEDULE, /**< Clear weekly schedule */
+ ZBLIB_THERMOSTAT_OPS_SETPOINT_RAISE_LOWER, /**< Setpoint raise lower */
+} ZblibThermostatOps_e;
+
/* ZigBee 'thermostat' driver APIs */
ZigBeeDriver *zblib_driver_thermostat_new(ZigBeePlugin *plugin,
const gchar *driver_name,
ZblibDriverThermostatOps_t *ops);
void zblib_driver_thermostat_free(ZigBeeDriver *driver);
-#endif /* __ZIGBEE_LIB_THERMOSTAT_H__ */
+#endif /* __ZIGBEE_LIB_DRIVER_THERMOSTAT_H__ */