/********************************************************************
*
* File: fsCNativeRenderTexture.h
*
* Purpose: bgfx implementation of a render texture.
*
* TODO: back with a bgfx frame buffer - currently a
* non-crashing stub, matching the state of the raylib
* backend.
*
*********************************************************************/
#ifndef fsCNativeRenderTexturehdr
#define fsCNativeRenderTexturehdr
#include "../../../fsIRenderableTexture.h"
#include "fsINative.h"
class fsIImage;
class fsCNativeRenderTexture : public fsIRenderableTexture
{
friend class fsITexture;
public:
void initialiseScreenDo(fsPoint pDimensions);
void initialiseSolutionDo(fsIImage* pSolution);
virtual ~fsCNativeRenderTexture();<--- Destructor in derived class
fsCNativeRenderTexture();
protected:
void targetSetDo() override;<--- Function in derived class
void targetClearDo() override;<--- Function in derived class
void brushSetDo(fsCResourceName const& pBrushFilename) override;<--- Function in derived class
void saveDo(fsCResourceName const& pFilename) override;<--- Function in derived class
void recolourDo(fsSColour4B const& pOld, fsSColour4B const& pNew) override;<--- Function in derived class
void paintWithSpriteBrushDo(fsPoint const& pPos) override;<--- Function in derived class
void paintDo(std::vector<fsPoint> const& pPos, fsSColour4B const& pColour) override;<--- Function in derived class
void renderDo() override;
private:
};
#endif