5#ifndef FLUTTER_IMPELLER_CORE_SHADER_TYPES_H_
6#define FLUTTER_IMPELLER_CORE_SHADER_TYPES_H_
14#include "flutter/fml/hash_combine.h"
15#include "flutter/fml/logging.h"
75 std::vector<ShaderStructMemberMetadata>
members;
168template <
size_t Size>
177 class = std::enable_if_t<std::is_standard_layout_v<T>>>
#define FML_UNREACHABLE()
constexpr std::size_t HashCombine()
constexpr ShaderStage ToShaderStage(RuntimeShaderStage stage)
constexpr Vector4 ToVector(Color color)
DescriptorType descriptor_type
Struct used for padding uniform buffer array elements.
Padding< Size > _PADDING_
Metadata required to bind a combined texture and sampler.
size_t texture_index
ext_res_0 is the Metal binding value.
size_t set
The Vulkan descriptor set index.
const char * name
The name of the uniform slot.
size_t binding
The Vulkan binding value.
constexpr size_t GetHash() const
constexpr bool operator==(const ShaderStageBufferLayout &other) const
constexpr bool operator==(const ShaderStageIOSlot &other) const
constexpr size_t GetHash() const