| Flutter Impeller |

Public Types | Public Member Functions | Protected Member Functions | List of all members
impeller::ShaderLibrary Class Referenceabstract

`#include <shader_library.h>`

Inheritance diagram for impeller::ShaderLibrary:

## Public Types
using | RegistrationCallback = std::function< void(bool)>

## Public Member Functions
virtual | ~ShaderLibrary ()
virtual bool | IsValid () const =0
virtual std::shared_ptr< const ShaderFunction > | GetFunction (std::string_view name, ShaderStage stage)=0
virtual void | RegisterFunction (std::string name, ShaderStage stage, std::shared_ptr< fml::Mapping > code, RegistrationCallback callback)
virtual void | UnregisterFunction (std::string name, ShaderStage stage)=0

## Protected Member Functions
| ShaderLibrary ()

## Detailed Description

Definition at line 20 of file shader_library.h.

## Member Typedef Documentation

## ◆ RegistrationCallback

using impeller::ShaderLibrary::RegistrationCallback = std::function<void(bool)>

Definition at line 30 of file shader_library.h.

## Constructor & Destructor Documentation

## ◆ ~ShaderLibrary()

impeller::ShaderLibrary::~ShaderLibrary | ( |  | ) |
| virtualdefault

## ◆ ShaderLibrary()

impeller::ShaderLibrary::ShaderLibrary | ( |  | ) |
| protecteddefault

## Member Function Documentation

## ◆ GetFunction()

virtual std::shared_ptr<const ShaderFunction> impeller::ShaderLibrary::GetFunction | ( | std::string_view | name,
|  | ShaderStage | stage
| ) |  |
| pure virtual

## ◆ IsValid()

virtual bool impeller::ShaderLibrary::IsValid | ( |  | ) | const
| pure virtual

Implemented in impeller::ShaderLibraryVK, impeller::ShaderLibraryMTL, and impeller::ShaderLibraryGLES.

## ◆ RegisterFunction()

void impeller::ShaderLibrary::RegisterFunction | ( | std::string | name,
|  | ShaderStage | stage,
|  | std::shared_ptr< fml::Mapping > | code,
|  | RegistrationCallback | callback
| ) |  |
| virtual

Definition at line 13 of file shader_library.cc.

19 { // NOLINT(performance-unnecessary-value-param)
20 if (callback) {
21 callback(false);
22 }
23 }

## ◆ UnregisterFunction()

virtual void impeller::ShaderLibrary::UnregisterFunction | ( | std::string | name,
|  | ShaderStage | stage
| ) |  |
| pure virtual

The documentation for this class was generated from the following files:

- impeller/renderer/shader_library.h
- impeller/renderer/shader_library.cc