/* ======================================== Copyright 2025 Amlal El Mahrouss. FILE: ddk.h PURPOSE: DDK Driver model base header. ======================================== */ #pragma once #include #include #if defined(__cplusplus) #define BOOL bool #define YES true #define NO false #define DDK_EXTERN extern "C" #define nil nullptr #undef NULL #define NULL 0 #define DDK_FINAL final #else #define BOOL char #define YES 1 #define NO 0 #define DDK_EXTERN extern #define nil ((void*) 0) #undef NULL #define NULL ((void*) 0) #define DDK_FINAL #endif // defined(__cplusplus) #ifndef __DDK__ #undef DDK_EXTERN #if defined(__cplusplus) #define DDK_EXTERN extern "C" #else #define DDK_EXTERN #endif #endif #define ATTRIBUTE(X) __attribute__((X)) #ifndef __NEOSKRNL__ #error !!! Do not include header in EL0/Ring 3 mode !!! #endif // __NEOSKRNL__