Files
nt-lite/code/public/ntlite/ddk/ddk.h
T

45 lines
1.2 KiB
C

// Public nt-lite DDK root declarations.
#pragma once
#include <stdint.h>
#include <ntlite/ddk/async.h>
#include <ntlite/ddk/debug.h>
#include <ntlite/ddk/display.h>
#include <ntlite/ddk/dpc.h>
#include <ntlite/ddk/driver.h>
#include <ntlite/ddk/event.h>
#include <ntlite/ddk/file.h>
#include <ntlite/ddk/interrupt.h>
#include <ntlite/ddk/irql.h>
#include <ntlite/ddk/list.h>
#include <ntlite/ddk/memory.h>
#include <ntlite/ddk/mutex.h>
#include <ntlite/ddk/object.h>
#include <ntlite/ddk/platform.h>
#include <ntlite/ddk/scheduler.h>
#include <ntlite/ddk/semaphore.h>
#include <ntlite/ddk/settings.h>
#include <ntlite/ddk/sync.h>
#include <ntlite/ddk/thread.h>
#include <ntlite/ddk/time.h>
#include <ntlite/ddk/timer.h>
#define NTL_DDK_VERSION 1u
// Root DDK table passed to kernel drivers by the driver loader.
typedef struct NTL_DDK {
uint32_t Version;
const NTL_DDK_DEBUG* Debug;
const NTL_DDK_INTERRUPT* Interrupt;
const NTL_DDK_MEMORY* Memory;
const NTL_DDK_PLATFORM* Platform;
const NTL_DDK_SCHEDULER* Scheduler;
const NTL_DDK_TIMER* Timer;
} NTL_DDK;
// Driver initialization record filled by DriverEntry in the DDK-table model.
typedef struct NTL_DRIVER_INIT {
const char* Name;
} NTL_DRIVER_INIT;