//CFTTRenderTargetVulkan - [2020-04-13 11:57:46]
#ifndef _CFTTRENDERTARGETVULKAN_H_
#define _CFTTRENDERTARGETVULKAN_H_

#include "common.h"

/*

00225954  CFTTRenderTargetVulkan::CFTTRenderTargetVulkan()
00225978  CFTTRenderTargetVulkan::~CFTTRenderTargetVulkan()
00225A10  CFTTRenderTargetVulkan::~CFTTRenderTargetVulkan()
00225A20  CFTTRenderTargetVulkan::Activate(bool)
00225A38  CFTTRenderTargetVulkan::CreateFramebufferObject()
00225D48  CFTTRenderTargetVulkan::ApplyViewport()
00225DE8  CFTTRenderTargetVulkan::SetColourBuffer(int,CFTTRenderBuffer *)
00225DEC  CFTTRenderTargetVulkan::SetDepthBuffer(CFTTRenderBuffer *)
00225DF0  CFTTRenderTargetVulkan::SetColourBufferMS(int,CFTTRenderBuffer *)
00225DF4  CFTTRenderTargetVulkan::SetDepthBufferMS(CFTTRenderBuffer *)
00225DF8  CFTTRenderTargetVulkan::PrepSpecificRenderPass(CFTTClearSettings const&)
002263BC  CFTTRenderTargetVulkan::GetCompatibleRenderPass()
002263DC  CFTTRenderTargetVulkan::GetCompatibleRenderPassIndex()
002263E8  CFTTRenderTargetVulkan::GetVkFramebuffer()
002263F4  CFTTRenderTargetVulkan::GetTargetSlice()
00226400  CFTTRenderTargetVulkan::FindOrCreateCompatibleRenderPass(CCompatibleRenderPassDescription &)
0022659C  CFTTRenderTargetVulkan::GetCompatibleRenderPassFromIndex(int)
002265B4  CFTTRenderTargetVulkan::FreeCompatibleRenderPassObjects()


vptr_CFTTRenderTargetVulkan_328B1C:
  CFTTRenderTargetVulkan::~CFTTRenderTargetVulkan()
  CFTTRenderTargetVulkan::~CFTTRenderTargetVulkan()
  CFTTRenderTargetVulkan::SetColourBuffer(int,CFTTRenderBuffer *)
  CFTTRenderTargetVulkan::SetColourBufferMS(int,CFTTRenderBuffer *)
  CFTTRenderTargetVulkan::SetDepthBuffer(CFTTRenderBuffer *)
  CFTTRenderTargetVulkan::SetDepthBufferMS(CFTTRenderBuffer *)
  CFTTRenderTargetVulkan::ApplyViewport()
  CFTTRenderTargetVulkan::Activate(bool)
  CFTTRenderTarget::Deactivate()
  CFTTRenderTarget::ExtractColourBuffer()

*/

class CFTTRenderTargetVulkan : public CFTTRenderTarget {
public:
  CFTTRenderTargetVulkan();                                                  //00225954
  ~CFTTRenderTargetVulkan();                                                 //00225978 00225A10
  int CreateFramebufferObject();                                             //00225A38
  virtual int SetColourBuffer(int, CFTTRenderBuffer *);                      //00225DE8
  virtual int SetColourBufferMS(int, CFTTRenderBuffer *);                    //00225DF0
  virtual int SetDepthBuffer(CFTTRenderBuffer *);                            //00225DEC
  virtual int SetDepthBufferMS(CFTTRenderBuffer *);                          //00225DF4
  virtual int ApplyViewport();                                               //00225D48
  virtual int Activate(bool);                                                //00225A20
  int PrepSpecificRenderPass(CFTTClearSettings const &);                     //00225DF8
  int GetCompatibleRenderPass();                                             //002263BC
  int GetCompatibleRenderPassIndex();                                        //002263DC
  int GetVkFramebuffer();                                                    //002263E8
  int GetTargetSlice();                                                      //002263F4
  int FindOrCreateCompatibleRenderPass(CCompatibleRenderPassDescription &);  //00226400
  VkRenderPass GetCompatibleRenderPassFromIndex(int i);                      //0022659C
  void FreeCompatibleRenderPassObjects();                                    //002265B4
};

#endif  //_CFTTRENDERTARGETVULKAN_H_