Flutter Engine
Loading...
Searching...
No Matches
shader_function_vk.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_VULKAN_SHADER_FUNCTION_VK_H_
6
#define FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_SHADER_FUNCTION_VK_H_
7
8
#include "
impeller/base/backend_cast.h
"
9
#include "
impeller/renderer/backend/vulkan/device_holder_vk.h
"
10
#include "
impeller/renderer/backend/vulkan/shader_function_vk.h
"
11
#include "
impeller/renderer/backend/vulkan/vk.h
"
12
#include "
impeller/renderer/shader_function.h
"
13
14
namespace
impeller
{
15
16
class
ShaderFunctionVK
final
17
:
public
ShaderFunction
,
18
public
BackendCast
<ShaderFunctionVK, ShaderFunction> {
19
public
:
20
// |ShaderFunction|
21
~ShaderFunctionVK
()
override
;
22
23
const
vk::ShaderModule&
GetModule
()
const
;
24
25
private
:
26
friend
class
ShaderLibraryVK
;
27
28
vk::UniqueShaderModule module_;
29
std::weak_ptr<DeviceHolderVK> device_holder_;
30
31
ShaderFunctionVK
(
const
std::weak_ptr<DeviceHolderVK>& device_holder,
32
UniqueID
parent_library_id,
33
std::string
name
,
34
ShaderStage
stage,
35
vk::UniqueShaderModule module);
36
37
ShaderFunctionVK
(
const
ShaderFunctionVK
&) =
delete
;
38
39
ShaderFunctionVK
& operator=(
const
ShaderFunctionVK
&) =
delete
;
40
};
41
42
}
// namespace impeller
43
44
#endif
// FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_SHADER_FUNCTION_VK_H_
backend_cast.h
impeller::BackendCast
Definition
backend_cast.h:11
impeller::ShaderFunction
Definition
shader_function.h:15
impeller::ShaderFunctionVK
Definition
shader_function_vk.h:18
impeller::ShaderFunctionVK::~ShaderFunctionVK
~ShaderFunctionVK() override
Definition
shader_function_vk.cc:19
impeller::ShaderFunctionVK::GetModule
const vk::ShaderModule & GetModule() const
Definition
shader_function_vk.cc:28
impeller::ShaderLibraryVK
Definition
shader_library_vk.h:17
device_holder_vk.h
name
const char * name
Definition
fuchsia.cc:49
impeller
Definition
texture.h:16
impeller::ShaderStage
ShaderStage
Definition
shader_types.h:22
shader_function.h
shader_function_vk.h
impeller::UniqueID
Definition
comparable.h:16
vk.h
impeller
renderer
backend
vulkan
shader_function_vk.h
Generated on Thu Nov 6 2025 16:11:23 for Flutter Engine by
1.9.8