Pyrogenesis HEAD
Pyrogenesis, a RTS Engine
|
#include "precompiled.h"
#include "lib/sysdep/os/win/acpi.h"
#include "lib/byte_order.h"
#include "lib/module_init.h"
#include "lib/sysdep/os/win/wfirmware.h"
#include <atomic>
Typedefs | |
typedef const volatile u8 * | PCV_u8 |
typedef const volatile AcpiTable * | PCV_AcpiTable |
Functions | |
static AcpiTable * | AllocateTable (size_t size) |
template<typename T > | |
static void | DeallocateTable (const T *table) |
static u8 | ComputeChecksum (PCV_u8 buf, size_t numBytes) |
static bool | ValidateTable (const AcpiTable *table, const char *signature=0) |
static void | AllocateAndCopyTables (std::atomic< const AcpiTable ** > &tables, size_t &numTables) |
void | acpi_Shutdown () |
invalidates all pointers returned by acpi_GetTable. More... | |
const AcpiTable * | acpi_GetTable (const char *signature) |
Variables | |
static std::atomic< const AcpiTable ** > | tables { nullptr } |
static const AcpiTable * | invalidTables |
static size_t | numTables |
typedef const volatile AcpiTable* PCV_AcpiTable |
const AcpiTable * acpi_GetTable | ( | const char * | signature | ) |
signature | e.g. "RSDT" |
note: the first call may be slow, e.g. if a kernel-mode driver is loaded. subsequent requests will be faster since tables are cached.
void acpi_Shutdown | ( | ) |
invalidates all pointers returned by acpi_GetTable.
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |