| Flutter Impeller |

sampler_library_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_SAMPLER_LIBRARY_GLES_H_
6 #define FLUTTER_IMPELLER_RENDERER_BACKEND_GLES_SAMPLER_LIBRARY_GLES_H_
7
8 #include "impeller/core/sampler.h"
9 #include "impeller/core/sampler_descriptor.h"
10 #include "impeller/renderer/backend/gles/sampler_gles.h"
11 #include "impeller/renderer/sampler_library.h"
12
13 namespace impeller {
14
15 class SamplerLibraryGLES final : public SamplerLibrary {
16 public:
17 explicit SamplerLibraryGLES(bool supports_decal_sampler_address_mode);
18 // |SamplerLibrary|
19 ~SamplerLibraryGLES() override;
20
21 private:
22 friend class ContextGLES;
23
24 std::vector<std::pair<uint64_t, std::shared_ptr<const Sampler>>> samplers_;
25
26 SamplerLibraryGLES();
27
28 // |SamplerLibrary|
29 raw_ptr<const Sampler> GetSampler(
30 const SamplerDescriptor& descriptor) override;
31
32 bool supports_decal_sampler_address_mode_ = false;
33
34 SamplerLibraryGLES(const SamplerLibraryGLES&) = delete;
35
36 SamplerLibraryGLES& operator=(const SamplerLibraryGLES&) = delete;
37 };
38
39 } // namespace impeller
40
41 #endif // FLUTTER_IMPELLER_RENDERER_BACKEND_GLES_SAMPLER_LIBRARY_GLES_H_
impeller::ContextGLES
Definition: context_gles.h:25
impeller::SamplerLibraryGLES
Definition: sampler_library_gles.h:15
impeller::SamplerLibraryGLES::~SamplerLibraryGLES
~SamplerLibraryGLES() override
impeller::SamplerLibrary
Definition: sampler_library.h:14
impeller::raw_ptr
A wrapper around a raw ptr that adds additional unopt mode only checks.
Definition: raw_ptr.h:15
impeller
Definition: allocation.cc:12
sampler.h
sampler_descriptor.h
sampler_gles.h
sampler_library.h
impeller::SamplerDescriptor
Definition: sampler_descriptor.h:14