blob: f785ba2482cf1dc95ae0dfe71997ff098c4f4656 [file] [log] [blame]
Adam Sawickif1a793c2018-03-13 15:42:22 +01001#ifndef VMA_USAGE_H_
2#define VMA_USAGE_H_
3
4#ifdef _WIN32
5
6#define NOMINMAX
7#define WIN32_LEAN_AND_MEAN
8#include <Windows.h>
9#define VK_USE_PLATFORM_WIN32_KHR
10
Adam Sawickie8b01482018-12-06 14:47:59 +010011// Uncomment to test including `vulkan.h` on your own before including VMA.
12//#include <vulkan/vulkan.h>
Adam Sawickif1a793c2018-03-13 15:42:22 +010013
14/*
15In every place where you want to use Vulkan Memory Allocator, define appropriate
16macros if you want to configure the library and then include its header to
17include all public interface declarations. Example:
18*/
19
Adam Sawicki212a4a62018-06-14 15:44:45 +020020//#define VMA_HEAVY_ASSERT(expr) assert(expr)
Adam Sawicki0a607132018-08-24 11:18:41 +020021//#define VMA_USE_STL_CONTAINERS 1
Adam Sawicki4f919392018-04-03 13:45:39 +020022//#define VMA_DEDICATED_ALLOCATION 0
Adam Sawicki212a4a62018-06-14 15:44:45 +020023//#define VMA_DEBUG_MARGIN 16
24//#define VMA_DEBUG_DETECT_CORRUPTION 1
Adam Sawickie44c6262018-06-15 14:30:39 +020025//#define VMA_DEBUG_INITIALIZE_ALLOCATIONS 1
Adam Sawickie5d9b012018-08-20 15:50:03 +020026//#define VMA_RECORDING_ENABLED 0
Adam Sawicki0a607132018-08-24 11:18:41 +020027//#define VMA_DEBUG_MIN_BUFFER_IMAGE_GRANULARITY 256
Adam Sawickif863a1d2018-10-10 16:43:44 +020028//#define VMA_USE_STL_SHARED_MUTEX 0
29//#define VMA_DEBUG_GLOBAL_MUTEX 1
Adam Sawicki212a4a62018-06-14 15:44:45 +020030
Adam Sawickif1a793c2018-03-13 15:42:22 +010031#pragma warning(push, 4)
32#pragma warning(disable: 4127) // conditional expression is constant
33#pragma warning(disable: 4100) // unreferenced formal parameter
34#pragma warning(disable: 4189) // local variable is initialized but not referenced
35
36#include "vk_mem_alloc.h"
37
38#pragma warning(pop)
39
40#else // #ifdef _WIN32
41
Adam Sawickic7d1b582018-08-27 12:30:53 +020042#ifdef __clang__
43 #pragma clang diagnostic push
44 #pragma clang diagnostic ignored "-Wtautological-compare" // comparison of unsigned expression < 0 is always false
45#endif
46
Adam Sawickif1a793c2018-03-13 15:42:22 +010047#include <vulkan/vulkan.h>
48#include "vk_mem_alloc.h"
49
Adam Sawickic7d1b582018-08-27 12:30:53 +020050#ifdef __clang__
51 #pragma clang diagnostic pop
52#endif
53
Adam Sawickif1a793c2018-03-13 15:42:22 +010054#endif // #ifdef _WIN32
55
56#endif