/*
 * This file is auto-generated, do not modify!
 *
 * SPDX-License-Identifier: LGPL-2.1-or-later
 */

#pragma once
#include <fu-input-stream.h>
/**
 * FuLogitechTapTouchDirection:
 */
typedef enum {
    /**
     * FU_LOGITECH_TAP_TOUCH_DIRECTION_OUT:
     */
    FU_LOGITECH_TAP_TOUCH_DIRECTION_OUT = 0x0,
    /**
     * FU_LOGITECH_TAP_TOUCH_DIRECTION_IN:
     */
    FU_LOGITECH_TAP_TOUCH_DIRECTION_IN = 0x0,
}  FuLogitechTapTouchDirection;
/**
 * FuStructLogitechTapTouchHidCmd:
 */
typedef enum {
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_FIRMWARE_VERSION:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_FIRMWARE_VERSION = 0x40,
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_PROTOCOL_VERSION:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_PROTOCOL_VERSION = 0x42,
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_MCU_VERSION:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_MCU_VERSION = 0x61,
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_SYS_BUSY_STATUS:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_SYS_BUSY_STATUS = 0x80,
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_MCU_MODE:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_MCU_MODE = 0xC0,
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_SET_AP_MODE:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_SET_AP_MODE = 0xC1,
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_SET_BL_MODE:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_SET_BL_MODE = 0xC2,
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_WRITE_DATA:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_WRITE_DATA = 0xC3,
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_WRITE_ENABLE:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_WRITE_ENABLE = 0xC4,
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_AP_CRC:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_AP_CRC = 0xC7,
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_DF_CRC:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_GET_DF_CRC = 0xCA,
    /**
     * FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_SET_TDE_TEST_MODE:
     */
    FU_STRUCT_LOGITECH_TAP_TOUCH_HID_CMD_SET_TDE_TEST_MODE = 0xF2,
}  FuStructLogitechTapTouchHidCmd;
/**
 * FuLogitechTapSensorHidTdeMode:
 */
typedef enum {
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_TDE_MODE_DISABLE:
     */
    FU_LOGITECH_TAP_SENSOR_HID_TDE_MODE_DISABLE = 0x0,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_TDE_MODE_ENABLE:
     */
    FU_LOGITECH_TAP_SENSOR_HID_TDE_MODE_ENABLE = 0x01,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_TDE_MODE_SELECTOR:
     */
    FU_LOGITECH_TAP_SENSOR_HID_TDE_MODE_SELECTOR = 0x02,
}  FuLogitechTapSensorHidTdeMode;
/**
 * FuLogitechTapSensorHidColossusApp:
 *
 * device version
 */
typedef enum {
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_COLOSSUS_APP_GET_VERSION:
     */
    FU_LOGITECH_TAP_SENSOR_HID_COLOSSUS_APP_GET_VERSION = 0x04,
}  FuLogitechTapSensorHidColossusApp;
/**
 * FuLogitechTapSensorHidSerialNumber:
 *
 * serial number of the device
 */
typedef enum {
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_SERIAL_NUMBER_SET_REPORT_BYTE1:
     */
    FU_LOGITECH_TAP_SENSOR_HID_SERIAL_NUMBER_SET_REPORT_BYTE1 = 0x0,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_SERIAL_NUMBER_SET_REPORT_BYTE4:
     */
    FU_LOGITECH_TAP_SENSOR_HID_SERIAL_NUMBER_SET_REPORT_BYTE4 = 0x0,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_SERIAL_NUMBER_SET_REPORT_BYTE3:
     */
    FU_LOGITECH_TAP_SENSOR_HID_SERIAL_NUMBER_SET_REPORT_BYTE3 = 0x0E,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_SERIAL_NUMBER_SET_REPORT_BYTE2:
     */
    FU_LOGITECH_TAP_SENSOR_HID_SERIAL_NUMBER_SET_REPORT_BYTE2 = 0x70,
}  FuLogitechTapSensorHidSerialNumber;
/**
 * FuLogitechTapSensorHidReboot:
 */
typedef enum {
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_REBOOT_PIN_CLR:
     */
    FU_LOGITECH_TAP_SENSOR_HID_REBOOT_PIN_CLR = 0x05,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_REBOOT_PIN_SET:
     */
    FU_LOGITECH_TAP_SENSOR_HID_REBOOT_PIN_SET = 0x06,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_REBOOT_PWR:
     */
    FU_LOGITECH_TAP_SENSOR_HID_REBOOT_PWR = 0x2D,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_REBOOT_RST:
     */
    FU_LOGITECH_TAP_SENSOR_HID_REBOOT_RST = 0x2E,
}  FuLogitechTapSensorHidReboot;
/**
 * FuLogitechTapSensorHidSetCmd:
 */
typedef enum {
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_SET_CMD_TDE:
     *
     * put device into suspend/operational mode
     */
    FU_LOGITECH_TAP_SENSOR_HID_SET_CMD_TDE = 0x1A,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_SET_CMD_REBOOT:
     */
    FU_LOGITECH_TAP_SENSOR_HID_SET_CMD_REBOOT = 0x1A,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_SET_CMD_VERSION:
     */
    FU_LOGITECH_TAP_SENSOR_HID_SET_CMD_VERSION = 0x1B,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_SET_CMD_SERIAL_NUMBER:
     */
    FU_LOGITECH_TAP_SENSOR_HID_SET_CMD_SERIAL_NUMBER = 0x1C,
}  FuLogitechTapSensorHidSetCmd;
/**
 * FuLogitechTapSensorHidGetCmd:
 */
typedef enum {
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_GET_CMD_VERSION:
     */
    FU_LOGITECH_TAP_SENSOR_HID_GET_CMD_VERSION = 0x19,
    /**
     * FU_LOGITECH_TAP_SENSOR_HID_GET_CMD_SERIAL_NUMBER:
     */
    FU_LOGITECH_TAP_SENSOR_HID_GET_CMD_SERIAL_NUMBER = 0x1D,
}  FuLogitechTapSensorHidGetCmd;
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructLogitechTapTouchHidReq;

FuStructLogitechTapTouchHidReq *fu_struct_logitech_tap_touch_hid_req_ref(FuStructLogitechTapTouchHidReq *st) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_touch_hid_req_unref(FuStructLogitechTapTouchHidReq *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructLogitechTapTouchHidReq, fu_struct_logitech_tap_touch_hid_req_unref)
FuStructLogitechTapTouchHidReq *fu_struct_logitech_tap_touch_hid_req_new(void) G_GNUC_WARN_UNUSED_RESULT;
void fu_struct_logitech_tap_touch_hid_req_set_payload_len(FuStructLogitechTapTouchHidReq *st, guint8 value) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_touch_hid_req_set_response_len(FuStructLogitechTapTouchHidReq *st, guint8 value) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_touch_hid_req_set_cmd(FuStructLogitechTapTouchHidReq *st, FuStructLogitechTapTouchHidCmd value) G_GNUC_NON_NULL(1);

#ifndef __GI_SCANNER__
#define FU_STRUCT_LOGITECH_TAP_TOUCH_HID_REQ_OFFSET_REPORT_ID 0x0
#define FU_STRUCT_LOGITECH_TAP_TOUCH_HID_REQ_OFFSET_RES_SIZE_SUPPORTED_ID 0x1
#define FU_STRUCT_LOGITECH_TAP_TOUCH_HID_REQ_OFFSET_PAYLOAD_LEN 0x2
#define FU_STRUCT_LOGITECH_TAP_TOUCH_HID_REQ_OFFSET_RESPONSE_LEN 0x3
#define FU_STRUCT_LOGITECH_TAP_TOUCH_HID_REQ_OFFSET_CMD 0x4
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_LOGITECH_TAP_TOUCH_HID_REQ_SIZE 0x5
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_LOGITECH_TAP_TOUCH_HID_REQ_DEFAULT_REPORT_ID 0x03
#define FU_STRUCT_LOGITECH_TAP_TOUCH_HID_REQ_DEFAULT_RES_SIZE_SUPPORTED_ID 0xA3
#endif
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructLogitechTapSensorHidReq;

FuStructLogitechTapSensorHidReq *fu_struct_logitech_tap_sensor_hid_req_ref(FuStructLogitechTapSensorHidReq *st) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_sensor_hid_req_unref(FuStructLogitechTapSensorHidReq *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructLogitechTapSensorHidReq, fu_struct_logitech_tap_sensor_hid_req_unref)
FuStructLogitechTapSensorHidReq *fu_struct_logitech_tap_sensor_hid_req_new(void) G_GNUC_WARN_UNUSED_RESULT;
void fu_struct_logitech_tap_sensor_hid_req_set_cmd(FuStructLogitechTapSensorHidReq *st, FuLogitechTapSensorHidSetCmd value) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_sensor_hid_req_set_payload_byte1(FuStructLogitechTapSensorHidReq *st, guint8 value) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_sensor_hid_req_set_payload_byte2(FuStructLogitechTapSensorHidReq *st, guint8 value) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_sensor_hid_req_set_payload_byte3(FuStructLogitechTapSensorHidReq *st, guint8 value) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_sensor_hid_req_set_payload_byte4(FuStructLogitechTapSensorHidReq *st, guint8 value) G_GNUC_NON_NULL(1);

#ifndef __GI_SCANNER__
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_REQ_OFFSET_CMD 0x0
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_REQ_OFFSET_PAYLOAD_BYTE1 0x1
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_REQ_OFFSET_PAYLOAD_BYTE2 0x2
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_REQ_OFFSET_PAYLOAD_BYTE3 0x3
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_REQ_OFFSET_PAYLOAD_BYTE4 0x4
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_REQ_SIZE 0x5
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_REQ_DEFAULT_PAYLOAD_BYTE3 0x0
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_REQ_DEFAULT_PAYLOAD_BYTE4 0x0
#endif
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructLogitechTapSensorHidRes;

FuStructLogitechTapSensorHidRes *fu_struct_logitech_tap_sensor_hid_res_ref(FuStructLogitechTapSensorHidRes *st) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_sensor_hid_res_unref(FuStructLogitechTapSensorHidRes *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructLogitechTapSensorHidRes, fu_struct_logitech_tap_sensor_hid_res_unref)
FuStructLogitechTapSensorHidRes *fu_struct_logitech_tap_sensor_hid_res_new(void) G_GNUC_WARN_UNUSED_RESULT;
void fu_struct_logitech_tap_sensor_hid_res_set_cmd(FuStructLogitechTapSensorHidRes *st, FuLogitechTapSensorHidGetCmd value) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_sensor_hid_res_set_payload_byte1(FuStructLogitechTapSensorHidRes *st, guint8 value) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_sensor_hid_res_set_payload_byte2(FuStructLogitechTapSensorHidRes *st, guint8 value) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_sensor_hid_res_set_payload_byte3(FuStructLogitechTapSensorHidRes *st, guint8 value) G_GNUC_NON_NULL(1);
void fu_struct_logitech_tap_sensor_hid_res_set_payload_byte4(FuStructLogitechTapSensorHidRes *st, guint8 value) G_GNUC_NON_NULL(1);

#ifndef __GI_SCANNER__
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_RES_OFFSET_CMD 0x0
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_RES_OFFSET_PAYLOAD_BYTE1 0x1
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_RES_OFFSET_PAYLOAD_BYTE2 0x2
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_RES_OFFSET_PAYLOAD_BYTE3 0x3
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_RES_OFFSET_PAYLOAD_BYTE4 0x4
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_LOGITECH_TAP_SENSOR_HID_RES_SIZE 0x5
#endif

#ifndef __GI_SCANNER__
#endif
