#pragma once

/*
	VulkanFramework
	by John Ryland
	Copyright (c) 2023
*/

////////////////////////////////////////////////////////////////////////////////////
//	Vulkan Render Pass

#include "VulkanDevice.h"
#include <functional>

namespace Vulkan {

class RenderPass
{
public:
    RenderPass();
    virtual ~RenderPass();

    virtual void Initialize(Device* device, VkFormat colorFormat, VkFormat depthFormat, VkSampleCountFlagBits msaaSamples);
    virtual void Destroy();

    Device*            m_owner;
    VkRenderPass       m_renderPass;
};

} // Vulkan namespace
