mirror of
https://github.com/borgesdan/xn65
synced 2024-12-29 21:54:47 +01:00
49 lines
2.0 KiB
C++
49 lines
2.0 KiB
C++
#ifndef XNA_GRAPHICS_DEPTHSTENCILSTATE_HPP
|
|
#define XNA_GRAPHICS_DEPTHSTENCILSTATE_HPP
|
|
|
|
#include "../default.hpp"
|
|
|
|
namespace xna {
|
|
class IDepthStencilState {
|
|
public:
|
|
virtual ~IDepthStencilState(){}
|
|
virtual bool Initialize(GraphicsDevice& device, xna_error_nullarg) = 0;
|
|
virtual bool Apply(GraphicsDevice& device, xna_error_ptr_arg) = 0;
|
|
|
|
virtual void DepthEnabled(bool value) = 0;
|
|
virtual void DepthWriteEnabled(bool value) = 0;
|
|
virtual void DepthCompareFunction(ComparisonFunction value) = 0;
|
|
virtual void StencilEnabled(bool value) = 0;
|
|
virtual void StencilReadMask(int value) = 0;
|
|
virtual void StencilWriteMask(int value) = 0;
|
|
virtual void StencilFrontFacePass(StencilOperation value) = 0;
|
|
virtual void StencilFrontFaceFail(StencilOperation value) = 0;
|
|
virtual void StencilFrontFaceDepthFail(StencilOperation value) = 0;
|
|
virtual void StencilFrontFaceCompare(ComparisonFunction value) = 0;
|
|
virtual void StencilBackFacePass(StencilOperation value) = 0;
|
|
virtual void StencilBackFaceFail(StencilOperation value) = 0;
|
|
virtual void StencilBackFaceDepthFail(StencilOperation value) = 0;
|
|
virtual void StencilBackFaceCompare(ComparisonFunction value) = 0;
|
|
|
|
virtual bool DepthEnabled() = 0;
|
|
virtual bool DepthWriteEnabled() = 0;
|
|
virtual ComparisonFunction DepthCompareFunction() = 0;
|
|
virtual bool StencilEnabled() = 0;
|
|
virtual int StencilReadMask() = 0;
|
|
virtual int StencilWriteMask() = 0;
|
|
virtual StencilOperation StencilFrontFacePass() = 0;
|
|
virtual StencilOperation StencilFrontFaceFail() = 0;
|
|
virtual StencilOperation StencilFrontFaceDepthFail() = 0;
|
|
virtual ComparisonFunction StencilFrontFaceCompare() = 0;
|
|
virtual StencilOperation StencilBackFacePass() = 0;
|
|
virtual StencilOperation StencilBackFaceFail() = 0;
|
|
virtual StencilOperation StencilBackFaceDepthFail() = 0;
|
|
virtual ComparisonFunction StencilBackFaceCompare() = 0;
|
|
|
|
static PDepthStencilState None();
|
|
static PDepthStencilState Default();
|
|
static PDepthStencilState DepthRead();
|
|
};
|
|
}
|
|
|
|
#endif |