tests: Make it easy to set pool & cb flags
authorChris Forbes <chrisforbes@google.com>
Thu, 18 May 2017 00:13:54 +0000 (17:13 -0700)
committerChris Forbes <chrisf@ijw.co.nz>
Fri, 19 May 2017 02:08:01 +0000 (19:08 -0700)
Enables more concise tests

tests/vkrenderframework.cpp
tests/vkrenderframework.h

index 3121b73..00832ac 100644 (file)
@@ -1288,10 +1288,11 @@ VkResult VkPipelineObj::CreateVKPipeline(VkPipelineLayout layout, VkRenderPass r
     return init_try(*m_device, *gp_ci);
 }
 
-VkCommandBufferObj::VkCommandBufferObj(VkDeviceObj *device, VkCommandPoolObj *pool) {
+VkCommandBufferObj::VkCommandBufferObj(VkDeviceObj *device, VkCommandPoolObj *pool, VkCommandBufferLevel level) {
     m_device = device;
-
-    init(*device, vk_testing::CommandBuffer::create_info(pool->handle()));
+    auto create_info = vk_testing::CommandBuffer::create_info(pool->handle());
+    create_info.level = level;
+    init(*device, create_info);
 }
 
 VkCommandBuffer VkCommandBufferObj::GetBufferHandle() { return handle(); }
index f1891fc..95782af 100644 (file)
@@ -155,7 +155,8 @@ class VkCommandPoolObj : public vk_testing::CommandPool {
 
 class VkCommandBufferObj : public vk_testing::CommandBuffer {
    public:
-    VkCommandBufferObj(VkDeviceObj *device, VkCommandPoolObj *pool);
+    VkCommandBufferObj(VkDeviceObj *device, VkCommandPoolObj *pool,
+                       VkCommandBufferLevel level = VK_COMMAND_BUFFER_LEVEL_PRIMARY);
     VkCommandBuffer GetBufferHandle();
     VkResult BeginCommandBuffer();
     VkResult BeginCommandBuffer(VkCommandBufferBeginInfo *pInfo);