sys_includes.h 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. /*
  2. ===========================================================================
  3. Doom 3 BFG Edition GPL Source Code
  4. Copyright (C) 1993-2012 id Software LLC, a ZeniMax Media company.
  5. This file is part of the Doom 3 BFG Edition GPL Source Code ("Doom 3 BFG Edition Source Code").
  6. Doom 3 BFG Edition Source Code is free software: you can redistribute it and/or modify
  7. it under the terms of the GNU General Public License as published by
  8. the Free Software Foundation, either version 3 of the License, or
  9. (at your option) any later version.
  10. Doom 3 BFG Edition Source Code is distributed in the hope that it will be useful,
  11. but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. GNU General Public License for more details.
  14. You should have received a copy of the GNU General Public License
  15. along with Doom 3 BFG Edition Source Code. If not, see <http://www.gnu.org/licenses/>.
  16. In addition, the Doom 3 BFG Edition Source Code is also subject to certain additional terms. You should have received a copy of these additional terms immediately following the terms and conditions of the GNU General Public License which accompanied the Doom 3 BFG Edition Source Code. If not, please request a copy in writing from id Software at the address below.
  17. If you have questions concerning this license or the applicable additional terms, you may contact in writing id Software LLC, c/o ZeniMax Media Inc., Suite 120, Rockville, Maryland 20850 USA.
  18. ===========================================================================
  19. */
  20. #ifndef SYS_INCLUDES_H
  21. #define SYS_INCLUDES_H
  22. // Include the various platform specific header files (windows.h, etc)
  23. /*
  24. ================================================================================================
  25. Windows
  26. ================================================================================================
  27. */
  28. #define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // prevent auto literal to string conversion
  29. #ifndef _D3SDK
  30. #ifndef GAME_DLL
  31. #define WINVER 0x501
  32. #include <winsock2.h>
  33. #include <mmsystem.h>
  34. #include <mmreg.h>
  35. #define DIRECTINPUT_VERSION 0x0800 // was 0x0700 with the old mssdk
  36. #define DIRECTSOUND_VERSION 0x0800
  37. #include <dsound.h>
  38. #include <dinput.h>
  39. #endif /* !GAME_DLL */
  40. #endif /* !_D3SDK */
  41. #include <intrin.h> // needed for intrinsics like _mm_setzero_si28
  42. #pragma warning(disable : 4100) // unreferenced formal parameter
  43. #pragma warning(disable : 4127) // conditional expression is constant
  44. #pragma warning(disable : 4244) // conversion to smaller type, possible loss of data
  45. #pragma warning(disable : 4714) // function marked as __forceinline not inlined
  46. #pragma warning(disable : 4996) // unsafe string operations
  47. #include <malloc.h> // no malloc.h on mac or unix
  48. #include <windows.h> // for qgl.h
  49. #undef FindText // fix namespace pollution
  50. /*
  51. ================================================================================================
  52. Common Include Files
  53. ================================================================================================
  54. */
  55. #if !defined( _DEBUG ) && !defined( NDEBUG )
  56. // don't generate asserts
  57. #define NDEBUG
  58. #endif
  59. #include <stdio.h>
  60. #include <stdlib.h>
  61. #include <stdarg.h>
  62. #include <string.h>
  63. #include <assert.h>
  64. #include <time.h>
  65. #include <ctype.h>
  66. #include <typeinfo>
  67. #include <errno.h>
  68. #include <math.h>
  69. #include <limits.h>
  70. #include <memory>
  71. //-----------------------------------------------------
  72. // Hacked stuff we may want to consider implementing later
  73. class idScopedGlobalHeap {
  74. };
  75. #endif // SYS_INCLUDES_H