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

GByteArray *fu_struct_smbios_ep32_new(void);
GByteArray *fu_struct_smbios_ep32_parse(const guint8 *buf, gsize bufsz, gsize offset, GError **error);
gchar *fu_struct_smbios_ep32_get_anchor_str(const GByteArray *st);
guint8 fu_struct_smbios_ep32_get_entry_point_csum(const GByteArray *st);
guint8 fu_struct_smbios_ep32_get_entry_point_len(const GByteArray *st);
guint8 fu_struct_smbios_ep32_get_smbios_major_ver(const GByteArray *st);
guint8 fu_struct_smbios_ep32_get_smbios_minor_ver(const GByteArray *st);
guint16 fu_struct_smbios_ep32_get_max_structure_sz(const GByteArray *st);
guint8 fu_struct_smbios_ep32_get_entry_point_rev(const GByteArray *st);
gchar *fu_struct_smbios_ep32_get_intermediate_anchor_str(const GByteArray *st);
guint8 fu_struct_smbios_ep32_get_intermediate_csum(const GByteArray *st);
guint16 fu_struct_smbios_ep32_get_structure_table_len(const GByteArray *st);
guint32 fu_struct_smbios_ep32_get_structure_table_addr(const GByteArray *st);
guint16 fu_struct_smbios_ep32_get_number_smbios_structs(const GByteArray *st);
guint8 fu_struct_smbios_ep32_get_smbios_bcd_rev(const GByteArray *st);
gboolean fu_struct_smbios_ep32_set_anchor_str(GByteArray *st, const gchar *value, GError **error);
void fu_struct_smbios_ep32_set_entry_point_csum(GByteArray *st, guint8 value);
void fu_struct_smbios_ep32_set_entry_point_len(GByteArray *st, guint8 value);
void fu_struct_smbios_ep32_set_smbios_major_ver(GByteArray *st, guint8 value);
void fu_struct_smbios_ep32_set_smbios_minor_ver(GByteArray *st, guint8 value);
void fu_struct_smbios_ep32_set_max_structure_sz(GByteArray *st, guint16 value);
void fu_struct_smbios_ep32_set_entry_point_rev(GByteArray *st, guint8 value);
gboolean fu_struct_smbios_ep32_set_intermediate_anchor_str(GByteArray *st, const gchar *value, GError **error);
void fu_struct_smbios_ep32_set_intermediate_csum(GByteArray *st, guint8 value);
void fu_struct_smbios_ep32_set_structure_table_len(GByteArray *st, guint16 value);
void fu_struct_smbios_ep32_set_structure_table_addr(GByteArray *st, guint32 value);
void fu_struct_smbios_ep32_set_number_smbios_structs(GByteArray *st, guint16 value);
void fu_struct_smbios_ep32_set_smbios_bcd_rev(GByteArray *st, guint8 value);
#define FU_STRUCT_SMBIOS_EP32_OFFSET_ANCHOR_STR 0x0
#define FU_STRUCT_SMBIOS_EP32_OFFSET_ENTRY_POINT_CSUM 0x4
#define FU_STRUCT_SMBIOS_EP32_OFFSET_ENTRY_POINT_LEN 0x5
#define FU_STRUCT_SMBIOS_EP32_OFFSET_SMBIOS_MAJOR_VER 0x6
#define FU_STRUCT_SMBIOS_EP32_OFFSET_SMBIOS_MINOR_VER 0x7
#define FU_STRUCT_SMBIOS_EP32_OFFSET_MAX_STRUCTURE_SZ 0x8
#define FU_STRUCT_SMBIOS_EP32_OFFSET_ENTRY_POINT_REV 0xA
#define FU_STRUCT_SMBIOS_EP32_OFFSET_INTERMEDIATE_ANCHOR_STR 0x10
#define FU_STRUCT_SMBIOS_EP32_OFFSET_INTERMEDIATE_CSUM 0x15
#define FU_STRUCT_SMBIOS_EP32_OFFSET_STRUCTURE_TABLE_LEN 0x16
#define FU_STRUCT_SMBIOS_EP32_OFFSET_STRUCTURE_TABLE_ADDR 0x18
#define FU_STRUCT_SMBIOS_EP32_OFFSET_NUMBER_SMBIOS_STRUCTS 0x1C
#define FU_STRUCT_SMBIOS_EP32_OFFSET_SMBIOS_BCD_REV 0x1E
#define FU_STRUCT_SMBIOS_EP32_SIZE_ANCHOR_STR 0x4
#define FU_STRUCT_SMBIOS_EP32_SIZE_INTERMEDIATE_ANCHOR_STR 0x5
#define FU_STRUCT_SMBIOS_EP32_SIZE 0x1F

GByteArray *fu_struct_smbios_ep64_new(void);
GByteArray *fu_struct_smbios_ep64_parse(const guint8 *buf, gsize bufsz, gsize offset, GError **error);
gchar *fu_struct_smbios_ep64_get_anchor_str(const GByteArray *st);
guint8 fu_struct_smbios_ep64_get_entry_point_csum(const GByteArray *st);
guint8 fu_struct_smbios_ep64_get_entry_point_len(const GByteArray *st);
guint8 fu_struct_smbios_ep64_get_smbios_major_ver(const GByteArray *st);
guint8 fu_struct_smbios_ep64_get_smbios_minor_ver(const GByteArray *st);
guint8 fu_struct_smbios_ep64_get_smbios_docrev(const GByteArray *st);
guint8 fu_struct_smbios_ep64_get_entry_point_rev(const GByteArray *st);
guint8 fu_struct_smbios_ep64_get_reserved0(const GByteArray *st);
guint32 fu_struct_smbios_ep64_get_structure_table_len(const GByteArray *st);
guint64 fu_struct_smbios_ep64_get_structure_table_addr(const GByteArray *st);
gboolean fu_struct_smbios_ep64_set_anchor_str(GByteArray *st, const gchar *value, GError **error);
void fu_struct_smbios_ep64_set_entry_point_csum(GByteArray *st, guint8 value);
void fu_struct_smbios_ep64_set_entry_point_len(GByteArray *st, guint8 value);
void fu_struct_smbios_ep64_set_smbios_major_ver(GByteArray *st, guint8 value);
void fu_struct_smbios_ep64_set_smbios_minor_ver(GByteArray *st, guint8 value);
void fu_struct_smbios_ep64_set_smbios_docrev(GByteArray *st, guint8 value);
void fu_struct_smbios_ep64_set_entry_point_rev(GByteArray *st, guint8 value);
void fu_struct_smbios_ep64_set_reserved0(GByteArray *st, guint8 value);
void fu_struct_smbios_ep64_set_structure_table_len(GByteArray *st, guint32 value);
void fu_struct_smbios_ep64_set_structure_table_addr(GByteArray *st, guint64 value);
#define FU_STRUCT_SMBIOS_EP64_OFFSET_ANCHOR_STR 0x0
#define FU_STRUCT_SMBIOS_EP64_OFFSET_ENTRY_POINT_CSUM 0x5
#define FU_STRUCT_SMBIOS_EP64_OFFSET_ENTRY_POINT_LEN 0x6
#define FU_STRUCT_SMBIOS_EP64_OFFSET_SMBIOS_MAJOR_VER 0x7
#define FU_STRUCT_SMBIOS_EP64_OFFSET_SMBIOS_MINOR_VER 0x8
#define FU_STRUCT_SMBIOS_EP64_OFFSET_SMBIOS_DOCREV 0x9
#define FU_STRUCT_SMBIOS_EP64_OFFSET_ENTRY_POINT_REV 0xA
#define FU_STRUCT_SMBIOS_EP64_OFFSET_RESERVED0 0xB
#define FU_STRUCT_SMBIOS_EP64_OFFSET_STRUCTURE_TABLE_LEN 0xC
#define FU_STRUCT_SMBIOS_EP64_OFFSET_STRUCTURE_TABLE_ADDR 0x10
#define FU_STRUCT_SMBIOS_EP64_SIZE_ANCHOR_STR 0x5
#define FU_STRUCT_SMBIOS_EP64_SIZE 0x18

GByteArray *fu_struct_smbios_structure_new(void);
GByteArray *fu_struct_smbios_structure_parse(const guint8 *buf, gsize bufsz, gsize offset, GError **error);
guint8 fu_struct_smbios_structure_get_type(const GByteArray *st);
guint8 fu_struct_smbios_structure_get_length(const GByteArray *st);
guint16 fu_struct_smbios_structure_get_handle(const GByteArray *st);
void fu_struct_smbios_structure_set_type(GByteArray *st, guint8 value);
void fu_struct_smbios_structure_set_length(GByteArray *st, guint8 value);
void fu_struct_smbios_structure_set_handle(GByteArray *st, guint16 value);
#define FU_STRUCT_SMBIOS_STRUCTURE_OFFSET_TYPE 0x0
#define FU_STRUCT_SMBIOS_STRUCTURE_OFFSET_LENGTH 0x1
#define FU_STRUCT_SMBIOS_STRUCTURE_OFFSET_HANDLE 0x2
#define FU_STRUCT_SMBIOS_STRUCTURE_SIZE 0x4
