#include <runtime_stage.h>
Public Types | |
| using | Map = std::map< RuntimeStageBackend, std::shared_ptr< RuntimeStage > > |
Public Member Functions | |
| RuntimeStage (const fb::RuntimeStage *runtime_stage, const std::shared_ptr< fml::Mapping > &payload) | |
| ~RuntimeStage () | |
| RuntimeStage (RuntimeStage &&) | |
| RuntimeStage & | operator= (RuntimeStage &&) |
| bool | IsValid () const |
| RuntimeShaderStage | GetShaderStage () const |
| const std::vector< RuntimeUniformDescription > & | GetUniforms () const |
| const std::vector< DescriptorSetLayout > & | GetDescriptorSetLayouts () const |
| const std::string & | GetEntrypoint () const |
| const RuntimeUniformDescription * | GetUniform (const std::string &name) const |
| const std::shared_ptr< fml::Mapping > & | GetCodeMapping () const |
| bool | IsDirty () const |
| void | SetClean () |
Static Public Member Functions | |
| static Map | DecodeRuntimeStages (const std::shared_ptr< fml::Mapping > &payload) |
Static Public Attributes | |
| static const char * | kVulkanUBOName |
Definition at line 20 of file runtime_stage.h.
| using impeller::RuntimeStage::Map = std::map<RuntimeStageBackend, std::shared_ptr<RuntimeStage> > |
Definition at line 24 of file runtime_stage.h.
| impeller::RuntimeStage::RuntimeStage | ( | const fb::RuntimeStage * | runtime_stage, |
| const std::shared_ptr< fml::Mapping > & | payload | ||
| ) |
Definition at line 86 of file runtime_stage.cc.
References impeller::RuntimeUniformDescription::array_elements, impeller::RuntimeUniformDescription::binding, impeller::RuntimeUniformDescription::bit_width, impeller::RuntimeUniformDescription::dimensions, end, GetUniforms(), impeller::kFragment, impeller::kSampledImage, impeller::kStruct, impeller::kUniformBuffer, impeller::RuntimeUniformDescription::location, impeller::RuntimeUniformDescription::name, impeller::RuntimeUniformDescription::struct_float_count, impeller::RuntimeUniformDescription::struct_layout, impeller::ToShaderStage(), impeller::ToType(), and impeller::RuntimeUniformDescription::type.
|
default |
|
default |
|
static |
Definition at line 62 of file runtime_stage.cc.
References impeller::kMetal, impeller::kOpenGLES, impeller::kOpenGLES3, impeller::kSkSL, and impeller::kVulkan.
Referenced by impeller::interop::FragmentProgram::FragmentProgram(), impeller::GoldenPlaygroundTest::OpenAssetAsRuntimeStage(), impeller::PlaygroundTest::OpenAssetAsRuntimeStage(), and impeller::testing::TEST_P().
| const std::shared_ptr< fml::Mapping > & impeller::RuntimeStage::GetCodeMapping | ( | ) | const |
Definition at line 172 of file runtime_stage.cc.
Referenced by impeller::RuntimeStagePlayground::RegisterStage().
| const std::vector< DescriptorSetLayout > & impeller::RuntimeStage::GetDescriptorSetLayouts | ( | ) | const |
Definition at line 207 of file runtime_stage.cc.
| const std::string & impeller::RuntimeStage::GetEntrypoint | ( | ) | const |
Definition at line 191 of file runtime_stage.cc.
Referenced by impeller::RuntimeStagePlayground::RegisterStage().
| RuntimeShaderStage impeller::RuntimeStage::GetShaderStage | ( | ) | const |
Definition at line 195 of file runtime_stage.cc.
Referenced by impeller::RuntimeStagePlayground::RegisterStage().
| const RuntimeUniformDescription * impeller::RuntimeStage::GetUniform | ( | const std::string & | name | ) | const |
Definition at line 181 of file runtime_stage.cc.
| const std::vector< RuntimeUniformDescription > & impeller::RuntimeStage::GetUniforms | ( | ) | const |
Definition at line 176 of file runtime_stage.cc.
Referenced by RuntimeStage().
| bool impeller::RuntimeStage::IsDirty | ( | ) | const |
Definition at line 199 of file runtime_stage.cc.
| bool impeller::RuntimeStage::IsValid | ( | ) | const |
Definition at line 168 of file runtime_stage.cc.
|
default |
| void impeller::RuntimeStage::SetClean | ( | ) |
Definition at line 203 of file runtime_stage.cc.
|
static |
The generated name from GLSLang/shaderc for the UBO containing non-opaque uniforms specified in the user-written runtime effect shader.
Vulkan does not allow non-opaque uniforms outside of a UBO.
Definition at line 22 of file runtime_stage.h.
Referenced by impeller::testing::TEST_P().