An immutable collection of shaders loaded from a shader bundle asset. More...
#include <shader_library.h>
Public Types | |
| using | ShaderMap = std::unordered_map< std::string, fml::RefPtr< Shader > > |
Public Types inherited from tonic::DartWrappable | |
| enum | DartNativeFields { kPeerIndex , kNumberOfNativeFields } |
Public Member Functions | |
| fml::RefPtr< Shader > | GetShader (const std::string &shader_name, Dart_Handle shader_wrapper) const |
| ~ShaderLibrary () override | |
Public Member Functions inherited from flutter::RefCountedDartWrappable< ShaderLibrary > | |
| virtual void | RetainDartWrappableReference () const override |
| virtual void | ReleaseDartWrappableReference () const override |
Public Member Functions inherited from fml::RefCountedThreadSafe< T > | |
| void | Release () const |
Public Member Functions inherited from fml::internal::RefCountedThreadSafeBase | |
| void | AddRef () const |
| bool | HasOneRef () const |
| void | AssertHasOneRef () const |
Public Member Functions inherited from tonic::DartWrappable | |
| DartWrappable () | |
| virtual const DartWrapperInfo & | GetDartWrapperInfo () const =0 |
| Dart_Handle | CreateDartWrapper (DartState *dart_state) |
| void | AssociateWithDartWrapper (Dart_Handle wrappable) |
| void | ClearDartWrapper () |
| Dart_WeakPersistentHandle | dart_wrapper () const |
Static Public Member Functions | |
| static fml::RefPtr< ShaderLibrary > | MakeFromAsset (impeller::Context::BackendType backend_type, const std::string &name, std::string &out_error) |
| static fml::RefPtr< ShaderLibrary > | MakeFromShaders (ShaderMap shaders) |
| static fml::RefPtr< ShaderLibrary > | MakeFromFlatbuffer (impeller::Context::BackendType backend_type, std::shared_ptr< fml::Mapping > payload) |
| static void | SetOverride (fml::RefPtr< ShaderLibrary > override_shader_library) |
Sets a return override for MakeFromAsset for testing purposes. | |
Additional Inherited Members | |
Protected Member Functions inherited from fml::RefCountedThreadSafe< T > | |
| RefCountedThreadSafe () | |
| ~RefCountedThreadSafe () | |
Protected Member Functions inherited from fml::internal::RefCountedThreadSafeBase | |
| RefCountedThreadSafeBase () | |
| ~RefCountedThreadSafeBase () | |
| bool | Release () const |
| void | Adopt () |
Protected Member Functions inherited from tonic::DartWrappable | |
| virtual | ~DartWrappable () |
Static Protected Member Functions inherited from tonic::DartWrappable | |
| static Dart_PersistentHandle | GetTypeForWrapper (tonic::DartState *dart_state, const tonic::DartWrapperInfo &wrapper_info) |
An immutable collection of shaders loaded from a shader bundle asset.
Definition at line 21 of file shader_library.h.
| using flutter::gpu::ShaderLibrary::ShaderMap = std::unordered_map<std::string, fml::RefPtr<Shader> > |
Definition at line 26 of file shader_library.h.
|
overridedefault |
| fml::RefPtr< Shader > flutter::gpu::ShaderLibrary::GetShader | ( | const std::string & | shader_name, |
| Dart_Handle | shader_wrapper | ||
| ) | const |
Definition at line 325 of file shader_library.cc.
Referenced by InternalFlutterGpu_ShaderLibrary_GetShader().
|
static |
Definition at line 28 of file shader_library.cc.
References flutter::UIDartState::Current(), flutter::data, MakeFromFlatbuffer(), and flutter::name.
Referenced by InternalFlutterGpu_ShaderLibrary_InitializeWithAsset().
|
static |
Definition at line 172 of file shader_library.cc.
References impeller::ShaderStageIOSlot::binding, impeller::ShaderStageIOSlot::bit_width, impeller::ShaderStageIOSlot::columns, flutter::gpu::FromInputType(), flutter::gpu::FromUniformType(), flutter::gpu::GetShaderBackend(), input(), impeller::kSampledImage, impeller::kUniformBuffer, impeller::ShaderStageIOSlot::location, flutter::gpu::Shader::Make(), flutter::gpu::Shader::TextureBinding::metadata, impeller::ShaderMetadata::name, impeller::ShaderUniformSlot::name, impeller::SampledImageSlot::name, impeller::ShaderStageIOSlot::name, impeller::ShaderStageIOSlot::offset, impeller::ShaderStageIOSlot::set, flutter::set, flutter::size, flutter::gpu::SizeOfInputType(), flutter::gpu::Shader::UniformBinding::slot, flutter::gpu::Shader::TextureBinding::slot, impeller::ShaderStageBufferLayout::stride, flutter::gpu::ToShaderStage(), impeller::ShaderStructMemberMetadata::type, impeller::ShaderStageIOSlot::type, VALIDATION_LOG, and impeller::ShaderStageIOSlot::vec_size.
Referenced by impeller::testing::InstantiateTestShaderLibrary(), and MakeFromAsset().
|
static |
Definition at line 49 of file shader_library.cc.
|
static |
Sets a return override for MakeFromAsset for testing purposes.
Definition at line 320 of file shader_library.cc.
Referenced by impeller::testing::InstantiateTestShaderLibrary().