blob: 79daaf8f9274b7ef5a4f1ea491f57d19eabf4793 [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
11#include <vulkan/vulkan.h>
12
13/*
14In every place where you want to use Vulkan Memory Allocator, define appropriate
15macros if you want to configure the library and then include its header to
16include all public interface declarations. Example:
17*/
18
19//#define VMA_USE_STL_CONTAINERS 1
20
Adam Sawicki212a4a62018-06-14 15:44:45 +020021//#define VMA_HEAVY_ASSERT(expr) assert(expr)
Adam Sawickif1a793c2018-03-13 15:42:22 +010022
Adam Sawicki4f919392018-04-03 13:45:39 +020023//#define VMA_DEDICATED_ALLOCATION 0
24
Adam Sawicki212a4a62018-06-14 15:44:45 +020025//#define VMA_DEBUG_MARGIN 16
26//#define VMA_DEBUG_DETECT_CORRUPTION 1
Adam Sawickie44c6262018-06-15 14:30:39 +020027//#define VMA_DEBUG_INITIALIZE_ALLOCATIONS 1
Adam Sawicki212a4a62018-06-14 15:44:45 +020028
Adam Sawickif1a793c2018-03-13 15:42:22 +010029#pragma warning(push, 4)
30#pragma warning(disable: 4127) // conditional expression is constant
31#pragma warning(disable: 4100) // unreferenced formal parameter
32#pragma warning(disable: 4189) // local variable is initialized but not referenced
33
34#include "vk_mem_alloc.h"
35
36#pragma warning(pop)
37
38#else // #ifdef _WIN32
39
40#include <vulkan/vulkan.h>
41#include "vk_mem_alloc.h"
42
43#endif // #ifdef _WIN32
44
45#endif