#ifndef __BASICTYPES_H #define __BASICTYPES_H #include // windef.h, included by windows.h, has its own incompatible definition // of DWORD as a long. In files that mix Doom and Windows code, you // must define USE_WINDOWS_DWORD before including doomtype.h so that // you are aware that those files have a different DWORD than the rest // of the source. #ifndef USE_WINDOWS_DWORD typedef uint32_t DWORD; #endif typedef uint32_t BITFIELD; typedef int INTBOOL; #if !defined(GUID_DEFINED) #define GUID_DEFINED typedef struct _GUID { DWORD Data1; uint16_t Data2; uint16_t Data3; uint8_t Data4[8]; } GUID; #endif union QWORD_UNION { uint64_t AsOne; struct { #ifdef __BIG_ENDIAN__ unsigned int Hi, Lo; #else unsigned int Lo, Hi; #endif }; }; // // fixed point, 32bit as 16.16. // #define FRACBITS 16 #define FRACUNIT (1<