1 // This header file includes Windows.h the way that MathGeoLib wants to use it. No need to follow this in your own projects.
2
3 #ifndef NOMINMAX
4 #define NOMINMAX
5 #endif
6 #ifndef WIN32_LEAN_AND_MEAN
7 #define WIN32_LEAN_AND_MEAN
8 #endif
9
10 // Windows GDI has a global function named Polygon. I am not renaming my Polygon object just for its sake, especially since
11 // I'm not expecting anyone to co-use this library with GDI. Kill the Polygon function from Windows. and force-include
12 // Windows.h here to erase that function signature.
13
14 // If you are getting build errors with conflicting types on Win32 GDI Polygon() and MathGeoLib class Polygon, then
15 // MathGeoLib is probably including this file too late, after your own project has already included <Windows.h> itself. In
16 // that case, try moving this file higher up in the include chain.
17
18 // Alternatively, consider building MathGeoLib with MATH_ENABLE_NAMESPACE so that class Polygon is enclosed in the math:: namespace
19 // and also possibly disable MATH_AUTO_USE_NAMESPACE in MathBuildConfig.h.
20 #ifndef MATH_ENABLE_NAMESPACE
21 #define Polygon Polygon_unused
22 #endif
23 #include <Windows.h>
24 #ifndef MATH_ENABLE_NAMESPACE
25 #undef Polygon
26 #endif
27

Go back to previous page