#pragma once
#include "acpi/SDT.h"

namespace ACPI
{
    struct XSDT
    {
        SDTHeader header;
        uint64_t other_sdt[1];
    };

    struct RSDT
    {
        SDTHeader header;
        uint32_t other_sdt[1];
    };

    SDTHeader* get_rsdt_or_xsdt();

    bool validate_rsdt_or_xsdt(SDTHeader* root_sdt);

    bool is_xsdt();

    void* find_table(SDTHeader* root_sdt, const char* signature);
}