#include <pipeline_library.h>
Definition at line 32 of file pipeline_library.h.
◆ ~PipelineLibrary()
| impeller::PipelineLibrary::~PipelineLibrary |
( |
| ) |
|
|
virtualdefault |
◆ PipelineLibrary()
| impeller::PipelineLibrary::PipelineLibrary |
( |
| ) |
|
|
protecteddefault |
◆ GetPipeline() [1/4]
◆ GetPipeline() [2/4]
Creates a pipeline.
- Parameters
-
| [in] | descriptor | The descriptor of the texture to create. |
| [in] | async | Whether to allow pipeline creation to be deferred. If false, pipeline creation will block on the current thread. |
| [in] | threadsafe | Whether mutations to this texture should be protected with a threadsafe barrier. |
This parameter only affects the OpenGLES rendering backend.
If any interaction with this texture (including creation) will be done on a thread other than where the OpenGLES context resides, then threadsafe, must be set to true.
◆ GetPipeline() [3/4]
Definition at line 29 of file pipeline_library.cc.
31 {
32 if (descriptor.has_value()) {
34 }
35 auto promise = std::make_shared<
36 std::promise<std::shared_ptr<Pipeline<ComputePipelineDescriptor>>>>();
37 promise->set_value(nullptr);
38 return {descriptor, promise->get_future()};
39}
PipelineFuture< PipelineDescriptor > GetPipeline(std::optional< PipelineDescriptor > descriptor, bool async=true)
References GetPipeline().
◆ GetPipeline() [4/4]
Definition at line 17 of file pipeline_library.cc.
19 {
20 if (descriptor.has_value()) {
22 }
23 auto promise = std::make_shared<
24 std::promise<std::shared_ptr<Pipeline<PipelineDescriptor>>>>();
25 promise->set_value(nullptr);
26 return {descriptor, promise->get_future()};
27}
References GetPipeline().
Referenced by GetPipeline(), and GetPipeline().
◆ GetPipelineUseCounts()
Definition at line 63 of file pipeline_library.cc.
63 {
64 std::unordered_map<PipelineDescriptor, int,
65 ComparableHash<PipelineDescriptor>,
66 ComparableEqual<PipelineDescriptor>>
68
69#if FLUTTER_RUNTIME_MODE == FLUTTER_RUNTIME_MODE_DEBUG || \
70 FLUTTER_RUNTIME_MODE == FLUTTER_RUNTIME_MODE_PROFILE
71 ReaderLock lock(pipeline_use_counts_mutex_);
72 counts = pipeline_use_counts_;
73#endif
75}
it will be possible to load the file into Perfetto s trace viewer use test Running tests that layout and measure text will not yield consistent results across various platforms Enabling this option will make font resolution default to the Ahem test font on all disable asset Prevents usage of any non test fonts unless they were explicitly Loaded via prefetched default font Indicates whether the embedding started a prefetch of the default font manager before creating the engine run In non interactive keep the shell running after the Dart script has completed enable serial On low power devices with low core counts
Referenced by impeller::testing::TEST(), and impeller::testing::TEST().
◆ HasPipeline()
| virtual bool impeller::PipelineLibrary::HasPipeline |
( |
const PipelineDescriptor & |
descriptor | ) |
|
|
pure virtual |
◆ IsValid()
| virtual bool impeller::PipelineLibrary::IsValid |
( |
| ) |
const |
|
pure virtual |
◆ LogPipelineCreation()
Definition at line 41 of file pipeline_library.cc.
41 {
42#if FLUTTER_RUNTIME_MODE == FLUTTER_RUNTIME_MODE_DEBUG || \
43 FLUTTER_RUNTIME_MODE == FLUTTER_RUNTIME_MODE_PROFILE
44 WriterLock lock(pipeline_use_counts_mutex_);
45 if (!pipeline_use_counts_.contains(p)) {
46 pipeline_use_counts_[p] = 0;
47 }
48#endif
49}
◆ LogPipelineUsage()
◆ RemovePipelinesWithEntryPoint()
| virtual void impeller::PipelineLibrary::RemovePipelinesWithEntryPoint |
( |
std::shared_ptr< const ShaderFunction > |
function | ) |
|
|
pure virtual |
The documentation for this class was generated from the following files: