| Flutter Impeller |

Public Member Functions | Public Attributes | List of all members
impeller::ShaderStageIOSlot Struct Reference

`#include <shader_types.h>`

## Public Member Functions
constexpr size_t | GetHash () const
constexpr bool | operator== (const ShaderStageIOSlot &other) const

## Public Attributes
const char * | name
size_t | location
size_t | set
size_t | binding
ShaderType | type
size_t | bit_width
size_t | vec_size
size_t | columns
size_t | offset
bool | relaxed_precision

## Detailed Description

Definition at line 112 of file shader_types.h.

## Member Function Documentation

## ◆ GetHash()

constexpr size_t impeller::ShaderStageIOSlot::GetHash | ( |  | ) | const
| inline constexpr

Definition at line 124 of file shader_types.h.

124 {
125 return fml::HashCombine(name, location, set, binding, type, bit_width,
126 vec_size, columns, offset, relaxed_precision);
127 }

References binding, bit_width, columns, location, name, offset, relaxed_precision, set, type, and vec_size.

## ◆ operator==()

constexpr bool impeller::ShaderStageIOSlot::operator== | ( | const ShaderStageIOSlot & | other | ) | const
| inline constexpr

Definition at line 129 of file shader_types.h.

129 {
130 return name == other.name && //
131 location == other.location && //
132 set == other.set && //
133 binding == other.binding && //
134 type == other.type && //
135 bit_width == other.bit_width && //
136 vec_size == other.vec_size && //
137 columns == other.columns && //
138 offset == other.offset && //
139 relaxed_precision == other.relaxed_precision //
140 ;
141 }

References binding, bit_width, columns, location, name, offset, relaxed_precision, set, type, and vec_size.

## Member Data Documentation

## ◆ binding

size_t impeller::ShaderStageIOSlot::binding

Definition at line 116 of file shader_types.h.

Referenced by impeller::ShaderStageCompatibilityChecker< VertexShaderT, FragmentShaderT >::Check(), GetHash(), and operator==().

## ◆ bit_width

size_t impeller::ShaderStageIOSlot::bit_width

Definition at line 118 of file shader_types.h.

Referenced by impeller::ShaderStageCompatibilityChecker< VertexShaderT, FragmentShaderT >::Check(), GetHash(), operator==(), impeller::ReadStageInputFormat(), and impeller::ToVertexDescriptorFormat().

## ◆ columns

size_t impeller::ShaderStageIOSlot::columns

Definition at line 120 of file shader_types.h.

Referenced by impeller::ShaderStageCompatibilityChecker< VertexShaderT, FragmentShaderT >::Check(), GetHash(), operator==(), impeller::ReadStageInputFormat(), and impeller::ToVertexDescriptorFormat().

## ◆ location

size_t impeller::ShaderStageIOSlot::location

Definition at line 114 of file shader_types.h.

Referenced by impeller::ShaderStageCompatibilityChecker< VertexShaderT, FragmentShaderT >::Check(), GetHash(), and operator==().

## ◆ name

const char* impeller::ShaderStageIOSlot::name

Definition at line 113 of file shader_types.h.

Referenced by impeller::ShaderStageCompatibilityChecker< VertexShaderT, FragmentShaderT >::Check(), GetHash(), and operator==().

## ◆ offset

size_t impeller::ShaderStageIOSlot::offset

Definition at line 121 of file shader_types.h.

Referenced by impeller::ShaderStageCompatibilityChecker< VertexShaderT, FragmentShaderT >::Check(), GetHash(), and operator==().

## ◆ relaxed_precision

bool impeller::ShaderStageIOSlot::relaxed_precision

Definition at line 122 of file shader_types.h.

Referenced by impeller::ShaderStageCompatibilityChecker< VertexShaderT, FragmentShaderT >::Check(), GetHash(), and operator==().

## ◆ set

size_t impeller::ShaderStageIOSlot::set

Definition at line 115 of file shader_types.h.

Referenced by impeller::ShaderStageCompatibilityChecker< VertexShaderT, FragmentShaderT >::Check(), GetHash(), and operator==().

## ◆ type

ShaderType impeller::ShaderStageIOSlot::type

Definition at line 117 of file shader_types.h.

Referenced by impeller::ShaderStageCompatibilityChecker< VertexShaderT, FragmentShaderT >::Check(), GetHash(), operator==(), impeller::ReadStageInputFormat(), and impeller::ToVertexDescriptorFormat().

## ◆ vec_size

size_t impeller::ShaderStageIOSlot::vec_size

Definition at line 119 of file shader_types.h.

Referenced by impeller::ShaderStageCompatibilityChecker< VertexShaderT, FragmentShaderT >::Check(), GetHash(), operator==(), impeller::ReadStageInputFormat(), and impeller::ToVertexDescriptorFormat().

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

- impeller/core/shader_types.h

impeller::ShaderStageIOSlot::relaxed_precision
bool relaxed_precision
Definition: shader_types.h:122
impeller::ShaderStageIOSlot::binding
size_t binding
Definition: shader_types.h:116
impeller::ShaderStageIOSlot::name
const char * name
Definition: shader_types.h:113
impeller::ShaderStageIOSlot::columns
size_t columns
Definition: shader_types.h:120
impeller::ShaderStageIOSlot::offset
size_t offset
Definition: shader_types.h:121
impeller::ShaderStageIOSlot::bit_width
size_t bit_width
Definition: shader_types.h:118
impeller::ShaderStageIOSlot::set
size_t set
Definition: shader_types.h:115
impeller::ShaderStageIOSlot::location
size_t location
Definition: shader_types.h:114
impeller::ShaderStageIOSlot::type
ShaderType type
Definition: shader_types.h:117
impeller::ShaderStageIOSlot::vec_size
size_t vec_size
Definition: shader_types.h:119