]> git.tdb.fi Git - libs/gl.git/blobdiff - source/backends/vulkan/query_backend.h
Initial implementation of Vulkan backend
[libs/gl.git] / source / backends / vulkan / query_backend.h
diff --git a/source/backends/vulkan/query_backend.h b/source/backends/vulkan/query_backend.h
new file mode 100644 (file)
index 0000000..25c44dc
--- /dev/null
@@ -0,0 +1,33 @@
+#ifndef MSP_GL_QUERY_BACKEND_H_
+#define MSP_GL_QUERY_BACKEND_H_
+
+#include <msp/core/noncopyable.h>
+#include <vector>
+
+namespace Msp {
+namespace GL {
+
+class VulkanQueryPool: public NonCopyable
+{
+       friend class VulkanCommands;
+
+protected:
+       unsigned vulkan_type;
+
+       VulkanQueryPool(unsigned);
+       VulkanQueryPool(VulkanQueryPool &&);
+       ~VulkanQueryPool();
+
+       void resize();
+
+       unsigned get_result(unsigned) const;
+};
+
+using QueryPoolBackend = VulkanQueryPool;
+
+unsigned get_vulkan_query_type(unsigned);
+
+} // namespace GL
+} // namespace Msp
+
+#endif