Flutter Engine
Loading...
Searching...
No Matches
sampler_library_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_SAMPLER_LIBRARY_VK_H_
6
#define FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_SAMPLER_LIBRARY_VK_H_
7
8
#include "
impeller/base/backend_cast.h
"
9
#include "
impeller/core/sampler.h
"
10
#include "
impeller/core/sampler_descriptor.h
"
11
#include "
impeller/renderer/backend/vulkan/device_holder_vk.h
"
12
#include "
impeller/renderer/backend/vulkan/workarounds_vk.h
"
13
#include "
impeller/renderer/sampler_library.h
"
14
15
namespace
impeller
{
16
17
class
SamplerLibraryVK
final
18
:
public
SamplerLibrary
,
19
public
BackendCast
<SamplerLibraryVK, SamplerLibrary> {
20
public
:
21
// |SamplerLibrary|
22
~SamplerLibraryVK
()
override
;
23
24
explicit
SamplerLibraryVK
(
const
std::weak_ptr<DeviceHolderVK>& device_holder);
25
26
void
ApplyWorkarounds
(
const
WorkaroundsVK
& workarounds);
27
28
private
:
29
friend
class
ContextVK
;
30
31
std::weak_ptr<DeviceHolderVK> device_holder_;
32
std::vector<std::pair<uint64_t, std::shared_ptr<const Sampler>>> samplers_;
33
bool
mips_disabled_workaround_ =
false
;
34
35
// |SamplerLibrary|
36
raw_ptr<const Sampler>
GetSampler(
37
const
SamplerDescriptor
& descriptor)
override
;
38
39
SamplerLibraryVK
(
const
SamplerLibraryVK
&) =
delete
;
40
41
SamplerLibraryVK
& operator=(
const
SamplerLibraryVK
&) =
delete
;
42
};
43
44
}
// namespace impeller
45
46
#endif
// FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_SAMPLER_LIBRARY_VK_H_
backend_cast.h
impeller::BackendCast
Definition
backend_cast.h:11
impeller::ContextVK
Definition
context_vk.h:66
impeller::SamplerLibrary
Definition
sampler_library.h:14
impeller::SamplerLibraryVK
Definition
sampler_library_vk.h:19
impeller::SamplerLibraryVK::~SamplerLibraryVK
~SamplerLibraryVK() override
impeller::SamplerLibraryVK::ApplyWorkarounds
void ApplyWorkarounds(const WorkaroundsVK &workarounds)
Definition
sampler_library_vk.cc:18
impeller::raw_ptr
A wrapper around a raw ptr that adds additional unopt mode only checks.
Definition
raw_ptr.h:15
device_holder_vk.h
impeller
Definition
texture.h:16
sampler.h
sampler_descriptor.h
sampler_library.h
impeller::SamplerDescriptor
Definition
sampler_descriptor.h:14
impeller::WorkaroundsVK
A non-exhaustive set of driver specific workarounds.
Definition
workarounds_vk.h:13
workarounds_vk.h
impeller
renderer
backend
vulkan
sampler_library_vk.h
Generated on Thu Nov 6 2025 16:11:23 for Flutter Engine by
1.9.8