15 #include <vsg/vk/CommandBuffer.h> 
   16 #include <vsg/vk/Semaphore.h> 
   25         explicit Fence(
Device* device, VkFenceCreateFlags flags = 0);
 
   27         operator VkFence()
 const { 
return _vkFence; }
 
   28         VkFence vk()
 const { 
return _vkFence; }
 
   30         VkResult wait(uint64_t timeout) 
const;
 
   32         VkResult reset() 
const;
 
   34         VkResult status()
 const { 
return vkGetFenceStatus(*_device, _vkFence); }
 
   36         bool hasDependencies()
 const { 
return (_dependentSemaphores.size() + _dependentCommandBuffers.size()) > 0; }
 
   38         void resetFenceAndDependencies();
 
   40         Semaphores& dependentSemaphores() { 
return _dependentSemaphores; }
 
   41         CommandBuffers& dependentCommandBuffers() { 
return _dependentCommandBuffers; }
 
   43         Device* getDevice() { 
return _device; }
 
   44         const Device* getDevice()
 const { 
return _device; }
 
   50         Semaphores _dependentSemaphores;
 
   51         CommandBuffers _dependentCommandBuffers;
 
Device encapsulate vkDeivce, a logical handle to the PhysicalDevice with capabilities specified durin...
Definition: Device.h:37