Viskores  1.0
Windows.h
Go to the documentation of this file.
1 //============================================================================
2 // The contents of this file are covered by the Viskores license. See
3 // LICENSE.txt for details.
4 //
5 // By contributing to this file, all contributors agree to the Developer
6 // Certificate of Origin Version 1.1 (DCO 1.1) as stated in DCO.txt.
7 //============================================================================
8 
9 //============================================================================
10 // Copyright (c) Kitware, Inc.
11 // All rights reserved.
12 // See LICENSE.txt for details.
13 //
14 // This software is distributed WITHOUT ANY WARRANTY; without even
15 // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
16 // PURPOSE. See the above copyright notice for more information.
17 //============================================================================
18 #ifndef viskores_internal_Windows_h
19 #define viskores_internal_Windows_h
20 
22 
23 #if defined(VISKORES_WINDOWS)
24 // Use pragma push_macro to properly save the state of WIN32_LEAN_AND_MEAN
25 // and NOMINMAX that the caller of viskores has setup
26 
28 
29 #pragma push_macro("WIN32_LEAN_AND_MEAN")
30 #pragma push_macro("NOMINMAX")
31 
32 #ifndef WIN32_LEAN_AND_MEAN
33 #define WIN32_LEAN_AND_MEAN
34 #endif
35 #ifndef NOMINMAX
36 #define NOMINMAX
37 #endif
38 
39 // windows.h, clobbers min and max functions so we
40 // define NOMINMAX to fix that problem. We also include WIN32_LEAN_AND_MEAN
41 // to reduce the number of macros and objects windows.h imports as those also
42 // can cause conflicts
43 #include <windows.h>
44 
45 #pragma pop_macro("WIN32_LEAN_AND_MEAN")
46 #pragma pop_macro("NOMINMAX")
47 
49 
50 #endif
51 
52 #endif //viskores_internal_Windows_h
VISKORES_THIRDPARTY_POST_INCLUDE
#define VISKORES_THIRDPARTY_POST_INCLUDE
Definition: Configure.h:200
Configure.h
VISKORES_THIRDPARTY_PRE_INCLUDE
#define VISKORES_THIRDPARTY_PRE_INCLUDE
Definition: Configure.h:199