Flutter Engine
 
Loading...
Searching...
No Matches
impeller::ComputePipelineHandle< ComputeShader_ > Class Template Reference

#include <pipeline.h>

Public Types

using ComputeShader = ComputeShader_
 
using Builder = ComputePipelineBuilder< ComputeShader >
 

Public Member Functions

 ComputePipelineHandle (const Context &context)
 
 ComputePipelineHandle (const Context &context, std::optional< ComputePipelineDescriptor > compute_desc)
 
 ComputePipelineHandle (PipelineFuture< ComputePipelineDescriptor > future)
 
std::shared_ptr< Pipeline< ComputePipelineDescriptor > > WaitAndGet ()
 

Detailed Description

template<class ComputeShader_>
class impeller::ComputePipelineHandle< ComputeShader_ >

Definition at line 188 of file pipeline.h.

Member Typedef Documentation

◆ Builder

template<class ComputeShader_ >
using impeller::ComputePipelineHandle< ComputeShader_ >::Builder = ComputePipelineBuilder<ComputeShader>

Definition at line 191 of file pipeline.h.

◆ ComputeShader

template<class ComputeShader_ >
using impeller::ComputePipelineHandle< ComputeShader_ >::ComputeShader = ComputeShader_

Definition at line 190 of file pipeline.h.

Constructor & Destructor Documentation

◆ ComputePipelineHandle() [1/3]

template<class ComputeShader_ >
impeller::ComputePipelineHandle< ComputeShader_ >::ComputePipelineHandle ( const Context context)
inlineexplicit

Definition at line 193 of file pipeline.h.

195 context,
196 Builder::MakeDefaultPipelineDescriptor(context))) {}
ComputePipelineHandle(const Context &context)
Definition pipeline.h:193
PipelineFuture< PipelineDescriptor > CreatePipelineFuture(const Context &context, std::optional< PipelineDescriptor > desc, bool async)
Create a pipeline for the given descriptor.
Definition pipeline.cc:24

◆ ComputePipelineHandle() [2/3]

template<class ComputeShader_ >
impeller::ComputePipelineHandle< ComputeShader_ >::ComputePipelineHandle ( const Context context,
std::optional< ComputePipelineDescriptor compute_desc 
)
inlineexplicit

Definition at line 198 of file pipeline.h.

201 : ComputePipelineHandle(CreatePipelineFuture(context, compute_desc)) {}

◆ ComputePipelineHandle() [3/3]

template<class ComputeShader_ >
impeller::ComputePipelineHandle< ComputeShader_ >::ComputePipelineHandle ( PipelineFuture< ComputePipelineDescriptor future)
inlineexplicit

Definition at line 203 of file pipeline.h.

205 : pipeline_future_(std::move(future)) {}

Member Function Documentation

◆ WaitAndGet()

template<class ComputeShader_ >
std::shared_ptr< Pipeline< ComputePipelineDescriptor > > impeller::ComputePipelineHandle< ComputeShader_ >::WaitAndGet ( )
inline

Definition at line 207 of file pipeline.h.

207 {
208 if (did_wait_) {
209 return pipeline_;
210 }
211 did_wait_ = true;
212 if (pipeline_future_.IsValid()) {
213 pipeline_ = pipeline_future_.Get();
214 }
215 return pipeline_;
216 }

The documentation for this class was generated from the following file: