40 lines
957 B
C
40 lines
957 B
C
#pragma once
|
|
#include "Resource.h"
|
|
|
|
struct PingPongBufferDescription
|
|
{
|
|
PingPongBufferDescription()
|
|
{
|
|
LoopCount = 0;
|
|
TextureWidth = 0;
|
|
TextureHeight = 0;
|
|
TextureFormat = DataFormat::Unknown;
|
|
}
|
|
|
|
uint32 LoopCount;
|
|
string16 ShaderFileName;
|
|
string8 ShaderTechniqueA;
|
|
string8 ShaderTechniqueB;
|
|
string8 PreProcessShaderTechnique;
|
|
|
|
uint32 TextureWidth;
|
|
uint32 TextureHeight;
|
|
DataFormat::Enumeration TextureFormat;
|
|
};
|
|
|
|
struct ITexture;
|
|
struct IRenderCommandNode;
|
|
|
|
interface IPingPongBuffer
|
|
{
|
|
virtual ~IPingPongBuffer() {}
|
|
virtual ITexture& get_InputTexture() const = 0;
|
|
virtual void set_InputTexture(ITexture& argTexture) = 0;
|
|
|
|
virtual ITexture& get_OutputTexture() const = 0;
|
|
|
|
virtual const PingPongBufferDescription& get_Descriptor() const = 0;
|
|
virtual void set_Descriptor(const PingPongBufferDescription& argValue) = 0;
|
|
virtual IRenderCommandNode& get_RootNode() const = 0;
|
|
virtual IRenderCommandNode& get_PreProcessNode() const = 0;
|
|
}; |