diff --git a/sdk/xtdk/amd64/xtstruct.h b/sdk/xtdk/amd64/xtstruct.h new file mode 100644 index 0000000..bb6087e --- /dev/null +++ b/sdk/xtdk/amd64/xtstruct.h @@ -0,0 +1,15 @@ +/** + * PROJECT: ExectOS + * COPYRIGHT: See COPYING.md in the top level directory + * FILE: sdk/xtdk/amd64/xtstruct.h + * DESCRIPTION: XT structures forward references specific to AMD64 architecture + * DEVELOPERS: Rafal Kupiec + */ + +#ifndef __XTDK_AMD64_XTSTRUCT_H +#define __XTDK_AMD64_XTSTRUCT_H + + +/* Architecture-related structures forward references */ + +#endif /* __XTDK_AMD64_XTSTRUCT_H */ diff --git a/sdk/xtdk/i686/xtstruct.h b/sdk/xtdk/i686/xtstruct.h new file mode 100644 index 0000000..0e6b775 --- /dev/null +++ b/sdk/xtdk/i686/xtstruct.h @@ -0,0 +1,15 @@ +/** + * PROJECT: ExectOS + * COPYRIGHT: See COPYING.md in the top level directory + * FILE: sdk/xtdk/i686/xtstruct.h + * DESCRIPTION: XT structures forward references specific to i686 architecture + * DEVELOPERS: Rafal Kupiec + */ + +#ifndef __XTDK_I686_XTSTRUCT_H +#define __XTDK_I686_XTSTRUCT_H + + +/* Architecture-related structures forward references */ + +#endif /* __XTDK_I686_XTSTRUCT_H */ diff --git a/sdk/xtdk/xtcommon.h b/sdk/xtdk/xtcommon.h new file mode 100644 index 0000000..41d4b11 --- /dev/null +++ b/sdk/xtdk/xtcommon.h @@ -0,0 +1,37 @@ +/** + * PROJECT: ExectOS + * COPYRIGHT: See COPYING.md in the top level directory + * FILE: sdk/xtdk/xtcommon.h + * DESCRIPTION: Basic and common XT structures for kernel and user modes + * DEVELOPERS: Rafal Kupiec + */ + +#ifndef __XTDK_XTCOMMON_H +#define __XTDK_XTCOMMON_H + +#include "xttypes.h" +#include "xtstruct.h" + + +/* Double linked list structure definition */ +typedef struct _LIST_ENTRY +{ + PLIST_ENTRY Flink; + PLIST_ENTRY Blink; +} LIST_ENTRY, *PLIST_ENTRY; + +/* 32-bit double linked list structure definition */ +typedef struct _LIST_ENTRY32 +{ + ULONG Flink; + ULONG Blink; +} LIST_ENTRY32, *PLIST_ENTRY32; + +/* 64-bit double linked list structure definition */ +typedef struct _LIST_ENTRY64 +{ + ULONGLONG Flink; + ULONGLONG Blink; +} LIST_ENTRY64, *PLIST_ENTRY64; + +#endif /* __XTDK_XTCOMMON_H */ diff --git a/sdk/xtdk/xtdefs.h b/sdk/xtdk/xtdefs.h index c53b38d..b741c76 100644 --- a/sdk/xtdk/xtdefs.h +++ b/sdk/xtdk/xtdefs.h @@ -6,8 +6,8 @@ * DEVELOPERS: Rafal Kupiec */ -#ifndef __XTDK_XTBASE_H -#define __XTDK_XTBASE_H +#ifndef __XTDK_XTDEFS_H +#define __XTDK_XTDEFS_H /* Routines and arguments modifiers */ @@ -82,4 +82,4 @@ typedef __builtin_va_list VA_LIST; #define UlongToHandle(Var) ((HANDLE)(ULONG_PTR)Var) #define UlongToPtr(Var) ((PVOID)(ULONG_PTR)Var) -#endif /* __XTDK_XTBASE_H */ +#endif /* __XTDK_XTDEFS_H */ diff --git a/sdk/xtdk/xtkmapi.h b/sdk/xtdk/xtkmapi.h index 43b5cde..e4a14d5 100644 --- a/sdk/xtdk/xtkmapi.h +++ b/sdk/xtdk/xtkmapi.h @@ -11,3 +11,12 @@ #include "xttypes.h" #include "xtdefs.h" #include "xtstatus.h" + +/* XT forward references */ +#include "xtstruct.h" + +/* Architecture-specific XT forward references */ +#include ARCH_HEADER(xtstruct.h) + +/* Architecture-independent XT API */ +#include "xtcommon.h" diff --git a/sdk/xtdk/xtstruct.h b/sdk/xtdk/xtstruct.h new file mode 100644 index 0000000..c3da205 --- /dev/null +++ b/sdk/xtdk/xtstruct.h @@ -0,0 +1,18 @@ +/** + * PROJECT: ExectOS + * COPYRIGHT: See COPYING.md in the top level directory + * FILE: sdk/xtdk/xtstruct.h + * DESCRIPTION: XT structures forward references + * DEVELOPERS: Rafal Kupiec + */ + +#ifndef __XTDK_XTSTRUCT_H +#define __XTDK_XTSTRUCT_H + + +/* Structures forward references */ +typedef struct _LIST_ENTRY LIST_ENTRY, *PLIST_ENTRY; +typedef struct _LIST_ENTRY32 LIST_ENTRY32, *PLIST_ENTRY32; +typedef struct _LIST_ENTRY64 LIST_ENTRY64, *PLIST_ENTRY64; + +#endif /* __XTDK_XTSTRUCT_H */