]> git.tdb.fi Git - libs/gl.git/blobdiff - source/backends/vulkan/query_backend.cpp
Initial implementation of Vulkan backend
[libs/gl.git] / source / backends / vulkan / query_backend.cpp
diff --git a/source/backends/vulkan/query_backend.cpp b/source/backends/vulkan/query_backend.cpp
new file mode 100644 (file)
index 0000000..707891b
--- /dev/null
@@ -0,0 +1,43 @@
+#include <stdexcept>
+#include "query.h"
+#include "query_backend.h"
+#include "vulkan.h"
+
+using namespace std;
+
+namespace Msp {
+namespace GL {
+
+VulkanQueryPool::VulkanQueryPool(unsigned t):
+       vulkan_type(get_vulkan_query_type(t))
+{
+       throw logic_error("VulkanQueryPool is unimplemented");
+}
+
+VulkanQueryPool::VulkanQueryPool(VulkanQueryPool &&other):
+       vulkan_type(other.vulkan_type)
+{ }
+
+VulkanQueryPool::~VulkanQueryPool()
+{ }
+
+void VulkanQueryPool::resize()
+{ }
+
+unsigned VulkanQueryPool::get_result(unsigned) const
+{
+       return 0;
+}
+
+
+unsigned get_vulkan_query_type(unsigned t)
+{
+       switch(t)
+       {
+       case OCCLUSION_QUERY: return VK_QUERY_TYPE_OCCLUSION;
+       default: throw invalid_argument("get_vulkan_query_type");
+       }
+}
+
+} // namespace GL
+} // namespace Msp