#pragma once
/*
VulkanFramework
by John Ryland
Copyright (c) 2023
*/
////////////////////////////////////////////////////////////////////////////////////
// Vulkan SwapChain
#include "VulkanDevice.h"
#include "VulkanSurface.h"
namespace Vulkan {
class SwapChain
{
public:
SwapChain(Device& device, Surface& surface);
virtual ~SwapChain();
Device& m_owner;
Surface& m_surface;
VkPresentModeKHR m_presentMode;
protected:
virtual void Create();
virtual void Destroy();
virtual VkPresentModeKHR SelectPresentMode();
};
} // Vulkan namespace