/* auto-generated, do not modify */
#pragma once
#include <fwupd-common.h>

GByteArray *fu_struct_ds20_new(void);
GByteArray *fu_struct_ds20_parse_bytes(GBytes *blob, gsize offset, GError **error);
const fwupd_guid_t *fu_struct_ds20_get_guid(const GByteArray *st);
guint32 fu_struct_ds20_get_platform_ver(const GByteArray *st);
guint16 fu_struct_ds20_get_total_length(const GByteArray *st);
guint8 fu_struct_ds20_get_vendor_code(const GByteArray *st);
guint8 fu_struct_ds20_get_alt_code(const GByteArray *st);
void fu_struct_ds20_set_guid(GByteArray *st, const fwupd_guid_t *value);
void fu_struct_ds20_set_platform_ver(GByteArray *st, guint32 value);
void fu_struct_ds20_set_total_length(GByteArray *st, guint16 value);
void fu_struct_ds20_set_vendor_code(GByteArray *st, guint8 value);
void fu_struct_ds20_set_alt_code(GByteArray *st, guint8 value);
#define FU_STRUCT_DS20_OFFSET_GUID 0x1
#define FU_STRUCT_DS20_OFFSET_PLATFORM_VER 0x11
#define FU_STRUCT_DS20_OFFSET_TOTAL_LENGTH 0x15
#define FU_STRUCT_DS20_OFFSET_VENDOR_CODE 0x17
#define FU_STRUCT_DS20_OFFSET_ALT_CODE 0x18
#define FU_STRUCT_DS20_SIZE_GUID 0x10
#define FU_STRUCT_DS20_SIZE 0x19

GByteArray *fu_struct_ms_ds20_new(void);
GByteArray *fu_struct_ms_ds20_parse_bytes(GBytes *blob, gsize offset, GError **error);
guint16 fu_struct_ms_ds20_get_size(const GByteArray *st);
guint16 fu_struct_ms_ds20_get_type(const GByteArray *st);
void fu_struct_ms_ds20_set_size(GByteArray *st, guint16 value);
void fu_struct_ms_ds20_set_type(GByteArray *st, guint16 value);
#define FU_STRUCT_MS_DS20_OFFSET_SIZE 0x0
#define FU_STRUCT_MS_DS20_OFFSET_TYPE 0x2
#define FU_STRUCT_MS_DS20_SIZE 0x4
