Remove non-standard template specialization, fix QT includes

This commit is contained in:
ksuprynowicz 2021-12-26 14:59:22 +01:00 committed by Karol Suprynowicz
parent 4eb71fbb5f
commit a135e9d37b
4 changed files with 36 additions and 55 deletions

View file

@ -1,5 +1,7 @@
#pragma once
#include <QtCore/qmetatype.h>
#include <QtCore/qtextstream.h>
#include "Config.h"
#include "Debug.h"

View file

@ -1,5 +1,7 @@
#pragma once
#include <QtCore/qmetatype.h>
#include <QtCore/qtextstream.h>
#include "Config.h"
namespace vks { namespace debug {

View file

@ -14,156 +14,132 @@ namespace vks {
return *this;
}
template <typename T>
/* template <typename T>
void destroy(T& t, OptionalAllocationCallbacks allocator = nullptr) const {
#if __cplusplus > 201703L
static_assert(false);
#else
assert(false);
#endif
}
}*/
template <>
void destroy<vk::Fence>(vk::Fence& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::Fence& object, OptionalAllocationCallbacks allocator) const {
destroyFence(object, allocator);
object = vk::Fence();
}
template <>
void destroy<vk::Semaphore>(vk::Semaphore& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::Semaphore& object, OptionalAllocationCallbacks allocator) const {
destroySemaphore(object, allocator);
object = vk::Semaphore();
}
template <>
void destroy<vk::Event>(vk::Event& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::Event& object, OptionalAllocationCallbacks allocator) const {
destroyEvent(object, allocator);
object = vk::Event();
}
template <>
void destroy<vk::QueryPool>(vk::QueryPool& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::QueryPool& object, OptionalAllocationCallbacks allocator) const {
destroyQueryPool(object, allocator);
object = vk::QueryPool();
}
template <>
void destroy<vk::Buffer>(vk::Buffer& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::Buffer& object, OptionalAllocationCallbacks allocator) const {
destroyBuffer(object, allocator);
object = vk::Buffer();
}
template <>
void destroy<vk::BufferView>(vk::BufferView& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::BufferView& object, OptionalAllocationCallbacks allocator) const {
destroyBufferView(object, allocator);
object = vk::BufferView();
}
template <>
void destroy<vk::Image>(vk::Image& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::Image& object, OptionalAllocationCallbacks allocator) const {
destroyImage(object, allocator);
object = vk::Image();
}
template <>
void destroy<vk::ImageView>(vk::ImageView& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::ImageView& object, OptionalAllocationCallbacks allocator) const {
destroyImageView(object, allocator);
object = vk::ImageView();
}
template <>
void destroy<vk::ShaderModule>(vk::ShaderModule& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::ShaderModule& object, OptionalAllocationCallbacks allocator) const {
destroyShaderModule(object, allocator);
object = vk::ShaderModule();
}
template <>
void destroy<vk::PipelineCache>(vk::PipelineCache& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::PipelineCache& object, OptionalAllocationCallbacks allocator) const {
destroyPipelineCache(object, allocator);
object = vk::PipelineCache();
}
template <>
void destroy<vk::Pipeline>(vk::Pipeline& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::Pipeline& object, OptionalAllocationCallbacks allocator) const {
destroyPipeline(object, allocator);
object = vk::Pipeline();
}
template <>
void destroy<vk::PipelineLayout>(vk::PipelineLayout& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::PipelineLayout& object, OptionalAllocationCallbacks allocator) const {
destroyPipelineLayout(object, allocator);
object = vk::PipelineLayout();
}
template <>
void destroy<vk::Sampler>(vk::Sampler& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::Sampler& object, OptionalAllocationCallbacks allocator) const {
destroySampler(object, allocator);
object = vk::Sampler();
}
template <>
void destroy<vk::DescriptorSetLayout>(vk::DescriptorSetLayout& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::DescriptorSetLayout& object, OptionalAllocationCallbacks allocator) const {
destroyDescriptorSetLayout(object, allocator);
object = vk::DescriptorSetLayout();
}
template <>
void destroy<vk::DescriptorPool>(vk::DescriptorPool& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::DescriptorPool& object, OptionalAllocationCallbacks allocator) const {
destroyDescriptorPool(object, allocator);
object = vk::DescriptorPool();
}
template <>
void destroy<vk::Framebuffer>(vk::Framebuffer& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::Framebuffer& object, OptionalAllocationCallbacks allocator) const {
destroyFramebuffer(object, allocator);
object = vk::Framebuffer();
}
template <>
void destroy<vk::RenderPass>(vk::RenderPass& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::RenderPass& object, OptionalAllocationCallbacks allocator) const {
destroyRenderPass(object, allocator);
object = vk::RenderPass();
}
template <>
void destroy<vk::CommandPool>(vk::CommandPool& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::CommandPool& object, OptionalAllocationCallbacks allocator) const {
destroyCommandPool(object, allocator);
object = vk::CommandPool();
}
template <>
void destroy<vk::SwapchainKHR>(vk::SwapchainKHR& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::SwapchainKHR& object, OptionalAllocationCallbacks allocator) const {
destroySwapchainKHR(object, allocator);
object = vk::SwapchainKHR();
}
template <>
void destroy<vk::IndirectCommandsLayoutNVX>(vk::IndirectCommandsLayoutNVX& object, OptionalAllocationCallbacks allocator) const {
destroyIndirectCommandsLayoutNVX(object, allocator);
object = vk::IndirectCommandsLayoutNVX();
void destroy(vk::IndirectCommandsLayoutNV& object, OptionalAllocationCallbacks allocator) const {
destroyIndirectCommandsLayoutNV(object, allocator);
object = vk::IndirectCommandsLayoutNV();
}
template <>
void destroy<vk::ObjectTableNVX>(vk::ObjectTableNVX& object, OptionalAllocationCallbacks allocator) const {
destroyObjectTableNVX(object, allocator);
object = vk::ObjectTableNVX();
}
//void destroy(vk::ObjectTableNVX& object, OptionalAllocationCallbacks allocator) const {
//destroyObjectTableNVX(object, allocator);
//object = vk::ObjectTableNVX();
//}
template <>
void destroy<vk::DescriptorUpdateTemplateKHR>(vk::DescriptorUpdateTemplateKHR& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::DescriptorUpdateTemplateKHR& object, OptionalAllocationCallbacks allocator) const {
destroyDescriptorUpdateTemplateKHR(object, allocator);
object = vk::DescriptorUpdateTemplateKHR();
}
template <>
void destroy<vk::SamplerYcbcrConversionKHR>(vk::SamplerYcbcrConversionKHR& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::SamplerYcbcrConversionKHR& object, OptionalAllocationCallbacks allocator) const {
destroySamplerYcbcrConversionKHR(object, allocator);
object = vk::SamplerYcbcrConversionKHR();
}
template <>
void destroy<vk::ValidationCacheEXT>(vk::ValidationCacheEXT& object, OptionalAllocationCallbacks allocator) const {
void destroy(vk::ValidationCacheEXT& object, OptionalAllocationCallbacks allocator) const {
destroyValidationCacheEXT(object, allocator);
object = vk::ValidationCacheEXT();
}

View file

@ -1,5 +1,6 @@
#pragma once
#include <QtCore/qmetatype.h>
#include "Config.h"
#include <array>
#include <vector>