| Flutter Impeller |

shader_function_gles.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef FLUTTER_IMPELLER_RENDERER_BACKEND_GLES_SHADER_FUNCTION_GLES_H_
6 #define FLUTTER_IMPELLER_RENDERER_BACKEND_GLES_SHADER_FUNCTION_GLES_H_
7
8 #include <string>
9
10 #include "flutter/fml/macros.h"
11 #include "flutter/fml/mapping.h"
12 #include "impeller/base/backend_cast.h"
13 #include "impeller/renderer/shader_function.h"
14
15 namespace impeller {
16
17 class ShaderLibraryGLES;
18
19 class ShaderFunctionGLES final
20 : public ShaderFunction,
21 public BackendCast<ShaderFunctionGLES, ShaderFunction> {
22 public:
23 // |ShaderFunction|
24 ~ShaderFunctionGLES() override;
25
26 const std::shared_ptr<const fml::Mapping>& GetSourceMapping() const;
27
28 private:
29 friend ShaderLibraryGLES;
30
31 std::shared_ptr<const fml::Mapping> mapping_;
32
33 ShaderFunctionGLES(UniqueID library_id,
34 ShaderStage stage,
35 std::string name,
36 std::shared_ptr<const fml::Mapping> mapping);
37
38 ShaderFunctionGLES(const ShaderFunctionGLES&) = delete;
39
40 ShaderFunctionGLES& operator=(const ShaderFunctionGLES&) = delete;
41 };
42
43 } // namespace impeller
44
45 #endif // FLUTTER_IMPELLER_RENDERER_BACKEND_GLES_SHADER_FUNCTION_GLES_H_
shader_function.h
impeller::ShaderFunctionGLES
Definition: shader_function_gles.h:19
impeller::ShaderStage
ShaderStage
Definition: shader_types.h:22
impeller::ShaderLibraryGLES
Definition: shader_library_gles.h:19
impeller::ShaderFunctionGLES::GetSourceMapping
const std::shared_ptr< const fml::Mapping > & GetSourceMapping() const
Definition: shader_function_gles.cc:20
impeller::ShaderFunctionGLES::~ShaderFunctionGLES
~ShaderFunctionGLES() override
impeller::ShaderFunction
Definition: shader_function.h:16
backend_cast.h
impeller::BackendCast
Definition: backend_cast.h:11
impeller::UniqueID
Definition: comparable.h:16
impeller
Definition: aiks_blur_unittests.cc:20