#ifndef XNA_GRAPHICS_SAMPLERSTATE_HPP #define XNA_GRAPHICS_SAMPLERSTATE_HPP #include "../default.hpp" #include "gresource.hpp" namespace xna { class SamplerState : GraphicsResource { public: SamplerState(); SamplerState(sptr const& device); ~SamplerState() override; bool Initialize(xna_error_nullarg); bool Apply(xna_error_nullarg); void Filter(TextureFilter value); void AddressU(TextureAddressMode value); void AddressV(TextureAddressMode value); void AddressW(TextureAddressMode value); void Comparison(ComparisonFunction value); void MipLODBias(float value); void MinLOD(float value); void MaxLOD(float value); void MaxAnisotropy(Uint value); TextureFilter Filter() const; TextureAddressMode AddressU() const; TextureAddressMode AddressV() const; TextureAddressMode AddressW() const; ComparisonFunction Comparison() const; float MipLODBias() const; float MinLOD() const; float MaxLOD() const; Uint MaxAnisotropy() const; static uptr PoinWrap(); static uptr PointClamp(); static uptr LinearWrap(); static uptr LinearClamp(); static uptr AnisotropicWrap(); static uptr AnisotropicClamp(); public: struct PlatformImplementation; uptr impl = nullptr; }; } #endif