/* auto-generated, do not modify */
#pragma once
#include <fwupd-common.h>
typedef enum {
    FU_IFD_REGION_DESC = 0x00,
    FU_IFD_REGION_BIOS = 0x01,
    FU_IFD_REGION_ME = 0x02,
    FU_IFD_REGION_GBE = 0x03,
    FU_IFD_REGION_PLATFORM = 0x04,
    FU_IFD_REGION_DEVEXP = 0x05,
    FU_IFD_REGION_BIOS2 = 0x06,
    FU_IFD_REGION_EC = 0x08,
    FU_IFD_REGION_IE = 0x0A,
    FU_IFD_REGION_10GBE = 0x0B,
    FU_IFD_REGION_MAX = 0x0F,
} FuIfdRegion;
const gchar *fu_ifd_region_to_string(FuIfdRegion val);

GByteArray *fu_struct_ifd_fdbar_new(void);
GByteArray *fu_struct_ifd_fdbar_parse_bytes(GBytes *blob, gsize offset, GError **error);
gboolean fu_struct_ifd_fdbar_validate_bytes(GBytes *blob, gsize offset, GError **error);
guint32 fu_struct_ifd_fdbar_get_descriptor_map0(const GByteArray *st);
guint32 fu_struct_ifd_fdbar_get_descriptor_map1(const GByteArray *st);
guint32 fu_struct_ifd_fdbar_get_descriptor_map2(const GByteArray *st);
void fu_struct_ifd_fdbar_set_descriptor_map0(GByteArray *st, guint32 value);
void fu_struct_ifd_fdbar_set_descriptor_map1(GByteArray *st, guint32 value);
void fu_struct_ifd_fdbar_set_descriptor_map2(GByteArray *st, guint32 value);
#define FU_STRUCT_IFD_FDBAR_OFFSET_SIGNATURE 0x10
#define FU_STRUCT_IFD_FDBAR_OFFSET_DESCRIPTOR_MAP0 0x14
#define FU_STRUCT_IFD_FDBAR_OFFSET_DESCRIPTOR_MAP1 0x18
#define FU_STRUCT_IFD_FDBAR_OFFSET_DESCRIPTOR_MAP2 0x1C
#define FU_STRUCT_IFD_FDBAR_SIZE 0x20
#define FU_STRUCT_IFD_FDBAR_DEFAULT_SIGNATURE 0x0FF0A55A

GByteArray *fu_struct_ifd_fcba_new(void);
GByteArray *fu_struct_ifd_fcba_parse_bytes(GBytes *blob, gsize offset, GError **error);
guint32 fu_struct_ifd_fcba_get_flcomp(const GByteArray *st);
guint32 fu_struct_ifd_fcba_get_flill(const GByteArray *st);
guint32 fu_struct_ifd_fcba_get_flill1(const GByteArray *st);
void fu_struct_ifd_fcba_set_flcomp(GByteArray *st, guint32 value);
void fu_struct_ifd_fcba_set_flill(GByteArray *st, guint32 value);
void fu_struct_ifd_fcba_set_flill1(GByteArray *st, guint32 value);
#define FU_STRUCT_IFD_FCBA_OFFSET_FLCOMP 0x0
#define FU_STRUCT_IFD_FCBA_OFFSET_FLILL 0x4
#define FU_STRUCT_IFD_FCBA_OFFSET_FLILL1 0x8
#define FU_STRUCT_IFD_FCBA_SIZE 0xC
