Flutter Impeller
impeller::StencilAttachmentDescriptor Struct Reference

#include <formats.h>

Public Member Functions

constexpr bool operator== (const StencilAttachmentDescriptor &o) const
 
constexpr size_t GetHash () const
 

Public Attributes

CompareFunction stencil_compare = CompareFunction::kAlways
 
StencilOperation stencil_failure = StencilOperation::kKeep
 
StencilOperation depth_failure = StencilOperation::kKeep
 
StencilOperation depth_stencil_pass = StencilOperation::kKeep
 
uint32_t read_mask = ~0
 
uint32_t write_mask = ~0
 

Detailed Description

Definition at line 610 of file formats.h.

Member Function Documentation

◆ GetHash()

constexpr size_t impeller::StencilAttachmentDescriptor::GetHash ( ) const
inlineconstexpr

◆ operator==()

constexpr bool impeller::StencilAttachmentDescriptor::operator== ( const StencilAttachmentDescriptor o) const
inlineconstexpr

Definition at line 642 of file formats.h.

642  {
643  return stencil_compare == o.stencil_compare &&
644  stencil_failure == o.stencil_failure &&
645  depth_failure == o.depth_failure &&
646  depth_stencil_pass == o.depth_stencil_pass &&
647  read_mask == o.read_mask && write_mask == o.write_mask;
648  }

References depth_failure, depth_stencil_pass, read_mask, stencil_compare, stencil_failure, and write_mask.

Member Data Documentation

◆ depth_failure

StencilOperation impeller::StencilAttachmentDescriptor::depth_failure = StencilOperation::kKeep

Indicates what to do when the stencil test passes but the depth test fails.

Definition at line 625 of file formats.h.

Referenced by impeller::ConfigureStencil(), GetHash(), operator==(), impeller::ToMTLStencilDescriptor(), and impeller::ToVKStencilOpState().

◆ depth_stencil_pass

StencilOperation impeller::StencilAttachmentDescriptor::depth_stencil_pass = StencilOperation::kKeep

Indicates what to do when both the stencil and depth tests pass.

Definition at line 629 of file formats.h.

Referenced by impeller::ContentContextOptions::ApplyToPipelineDescriptor(), impeller::ConfigureStencil(), GetHash(), operator==(), impeller::ToMTLStencilDescriptor(), and impeller::ToVKStencilOpState().

◆ read_mask

uint32_t impeller::StencilAttachmentDescriptor::read_mask = ~0

The mask applied to the reference and stencil buffer values before performing the stencil_compare operation.

Definition at line 635 of file formats.h.

Referenced by impeller::ConfigureStencil(), GetHash(), operator==(), impeller::ToMTLStencilDescriptor(), and impeller::ToVKStencilOpState().

◆ stencil_compare

CompareFunction impeller::StencilAttachmentDescriptor::stencil_compare = CompareFunction::kAlways

Indicates the operation to perform between the reference value and the value in the stencil buffer. Both values have the read_mask applied to them before performing this operation.

Definition at line 616 of file formats.h.

Referenced by impeller::ContentContextOptions::ApplyToPipelineDescriptor(), impeller::ConfigureStencil(), GetHash(), impeller::PipelineBuilder< VertexShader_, FragmentShader_ >::InitializePipelineDescriptorDefaults(), operator==(), impeller::testing::TEST_P(), impeller::ToMTLStencilDescriptor(), and impeller::ToVKStencilOpState().

◆ stencil_failure

StencilOperation impeller::StencilAttachmentDescriptor::stencil_failure = StencilOperation::kKeep

◆ write_mask

uint32_t impeller::StencilAttachmentDescriptor::write_mask = ~0

The mask applied to the new stencil value before it is written into the stencil buffer.

Definition at line 640 of file formats.h.

Referenced by impeller::ConfigureStencil(), GetHash(), operator==(), impeller::ToMTLStencilDescriptor(), and impeller::ToVKStencilOpState().


The documentation for this struct was generated from the following file: