35 lines
1003 B
C++
35 lines
1003 B
C++
#pragma once
|
|
|
|
#include "IRenderTargetTexture.h"
|
|
#include "../RenderTargetBase.h"
|
|
|
|
struct ITexture;
|
|
class RenderTargetTexture
|
|
: public RenderTargetBase
|
|
, public IRenderTargetTexture
|
|
{
|
|
public:
|
|
RenderTargetTexture(IEngine& argEngine);
|
|
virtual ~RenderTargetTexture();
|
|
|
|
virtual void SetTextureParameters(uint32 argWidth, uint32 argHeight, DataFormat::Enumeration argFormat, uint32 argMultiSampleCount = 1, uint32 argMultiSampleQuality = 0);
|
|
virtual void Resize(int argWidth, int argHeight);
|
|
virtual ITexture& get_TextureResource() const { return *m_Texture; }
|
|
|
|
virtual IRenderTargetBase& get_Base() { return *dynamic_cast<IRenderTargetBase*>(this); }
|
|
|
|
virtual void Uninitialize();
|
|
|
|
// IRenderTargetBase
|
|
virtual uint32 get_RenderTargetWidth() const;
|
|
virtual uint32 get_RenderTargetHeight() const;
|
|
virtual DataFormat::Enumeration get_RenderTargetFormat() const;
|
|
|
|
protected:
|
|
//ICommandUser
|
|
virtual string8 get_UserName() const { return "RenderTargetTexture"; }
|
|
|
|
private:
|
|
ITexture* m_Texture;
|
|
};
|