class DefaultShaderProgramFactory

Defined at line 20 of file ../../src/ui/lib/escher/defaults/default_shader_program_factory.h

Provides the default implementation of ShaderProgramFactory; Escher creates

an instance of this class and implements ShaderProgramFactory by delegating

to it. NOTE: programs generated by DefaultShaderProgramFactory are cached.

Public Methods

void DefaultShaderProgramFactory (EscherWeakPtr escher, HackFilesystemPtr filesystem)

Defined at line 12 of file ../../src/ui/lib/escher/defaults/default_shader_program_factory.cc

void ~DefaultShaderProgramFactory ()

Defined at line 16 of file ../../src/ui/lib/escher/defaults/default_shader_program_factory.cc

const HackFilesystemPtr & filesystem ()

Exposed so that the client can call InitializeWithRealFiles() upon the

filesystem. This is hacky and will change in the future.

Defined at line 27 of file ../../src/ui/lib/escher/defaults/default_shader_program_factory.h

void Clear ()

Clear all cached programs and other data.

Defined at line 93 of file ../../src/ui/lib/escher/defaults/default_shader_program_factory.cc

ShaderModuleTemplatePtr ObtainShaderModuleTemplate (ShaderStage stage, const std::string & source_path)

Obtain a lazily-generated and cached ShaderModuleTemplate corresponding to

the specified shader stage and source code.

Defined at line 77 of file ../../src/ui/lib/escher/defaults/default_shader_program_factory.cc

Friends

class Escher