Program Listing for File semaphore.hpp¶
↰ Return to documentation for file (inexor/vulkan-renderer/wrapper/semaphore.hpp
)
#pragma once
#include <volk.h>
#include <string>
namespace inexor::vulkan_renderer::wrapper {
// Forward declaration
class Device;
class Semaphore {
const Device &m_device;
VkSemaphore m_semaphore{VK_NULL_HANDLE};
std::string m_name;
public:
Semaphore(const Device &device, const std::string &name);
Semaphore(const Semaphore &) = delete;
Semaphore(Semaphore &&) noexcept;
~Semaphore();
Semaphore &operator=(const Semaphore &) = delete;
Semaphore &operator=(Semaphore &&) = delete;
[[nodiscard]] const VkSemaphore *semaphore() const {
return &m_semaphore;
}
};
} // namespace inexor::vulkan_renderer::wrapper