LiteFX 0.3.1.2022
Computer Graphics Engine
LiteFX::Rendering::DepthStencilState Class Reference

Stores the depth/stencil state of a see IRasterizer. More...

#include <rendering_api.hpp>

Classes

struct  DepthBias
 Describes the rasterizer depth bias. More...
 
struct  DepthState
 Describes the rasterizer depth state. More...
 
class  DepthStencilStateImpl
 
struct  StencilState
 Describes the rasterizer stencil state. More...
 
struct  StencilTest
 Describes a stencil test for either front or back faces. More...
 

Public Member Functions

 DepthStencilState (const DepthState &depthState, const DepthBias &depthBias, const StencilState &stencilState) noexcept
 Initializes a new rasterizer depth/stencil state. More...
 
 DepthStencilState () noexcept
 Initializes a new rasterizer depth/stencil state. More...
 
 DepthStencilState (const DepthStencilState &) noexcept
 Creates a copy of a depth/stencil state. More...
 
 DepthStencilState (DepthStencilState &&) noexcept
 Moves a depth/stencil state. More...
 
virtual ~DepthStencilState () noexcept
 Destroys a depth/stencil state. More...
 
DepthStencilStateoperator= (const DepthStencilState &) noexcept
 Copies a depth/stencil state. More...
 
DepthStencilStateoperator= (DepthStencilState &&) noexcept
 Moves a depth/stencil state. More...
 
virtual DepthStatedepthState () const noexcept
 Returns the depth state. More...
 
virtual DepthBiasdepthBias () const noexcept
 Returns the depth bias. More...
 
virtual StencilStatestencilState () const noexcept
 Returns the stencil state. More...
 

Detailed Description

Stores the depth/stencil state of a see IRasterizer.

Constructor & Destructor Documentation

◆ DepthStencilState() [1/4]

DepthStencilState::DepthStencilState ( const DepthState depthState,
const DepthBias depthBias,
const StencilState stencilState 
)
explicitnoexcept

Initializes a new rasterizer depth/stencil state.

Parameters
depthStateThe depth state of the rasterizer.
depthBiasThe depth bias configuration of the rasterizer.
stencilStateThe stencil state of the rasterizer.

◆ DepthStencilState() [2/4]

DepthStencilState::DepthStencilState ( )
noexcept

Initializes a new rasterizer depth/stencil state.

◆ DepthStencilState() [3/4]

DepthStencilState::DepthStencilState ( const DepthStencilState _other)
noexcept

Creates a copy of a depth/stencil state.

◆ DepthStencilState() [4/4]

DepthStencilState::DepthStencilState ( DepthStencilState &&  _other)
noexcept

Moves a depth/stencil state.

◆ ~DepthStencilState()

DepthStencilState::~DepthStencilState ( )
virtualdefaultnoexcept

Destroys a depth/stencil state.

Member Function Documentation

◆ depthBias()

DepthStencilState::DepthBias & DepthStencilState::depthBias ( ) const
virtualnoexcept

Returns the depth bias.

Returns
The depth bias.

◆ depthState()

DepthStencilState::DepthState & DepthStencilState::depthState ( ) const
virtualnoexcept

Returns the depth state.

Returns
The depth state.

◆ operator=() [1/2]

DepthStencilState & DepthStencilState::operator= ( const DepthStencilState _other)
noexcept

Copies a depth/stencil state.

Returns
A reference to the current depth/stencil state instance.

◆ operator=() [2/2]

DepthStencilState & DepthStencilState::operator= ( DepthStencilState &&  _other)
noexcept

Moves a depth/stencil state.

Returns
A reference to the current depth/stencil state instance.

◆ stencilState()

DepthStencilState::StencilState & DepthStencilState::stencilState ( ) const
virtualnoexcept

Returns the stencil state.

Returns
The stencil state.