| Flutter Impeller |

Public Types | Public Member Functions | List of all members
impeller::RenderPipelineHandle< VertexShader_, FragmentShader_ > Class Template Reference

`#include <pipeline.h>`

Inheritance diagram for impeller::RenderPipelineHandle< VertexShader_, FragmentShader_ >:

## Public Types
using | VertexShader = VertexShader_
using | FragmentShader = FragmentShader_
using | Builder = PipelineBuilder< VertexShader, FragmentShader >

## Public Member Functions
| RenderPipelineHandle (const Context &context, bool async=true)
| RenderPipelineHandle (const Context &context, std::optional< PipelineDescriptor > desc, bool async=true)
| RenderPipelineHandle (PipelineFuture< PipelineDescriptor > future)
Public Member Functions inherited from impeller::GenericRenderPipelineHandle
| GenericRenderPipelineHandle (const Context &context, std::optional< PipelineDescriptor > desc, bool async=true)
| GenericRenderPipelineHandle (PipelineFuture< PipelineDescriptor > future)
virtual | ~GenericRenderPipelineHandle ()=default
std::shared_ptr< Pipeline< PipelineDescriptor > > | WaitAndGet (PipelineCompileQueue *queue)
std::optional< PipelineDescriptor > | GetDescriptor () const

## Detailed Description

### template<class VertexShader_, class FragmentShader_>
class impeller::RenderPipelineHandle< VertexShader_, FragmentShader_ >

Holds a reference to a Pipeline used for rendering while also maintaining the vertex shader and fragment shader types at compile-time.

See also:

- impeller::ContentContext::Variants - the typical container for RenderPipelineHandles.

Definition at line 166 of file pipeline.h.

## Member Typedef Documentation

## ◆ Builder

template<class VertexShader_ , class FragmentShader_ >

using impeller::RenderPipelineHandle< VertexShader_, FragmentShader_ >::Builder = PipelineBuilder<VertexShader, FragmentShader>

Definition at line 170 of file pipeline.h.

## ◆ FragmentShader

template<class VertexShader_ , class FragmentShader_ >

using impeller::RenderPipelineHandle< VertexShader_, FragmentShader_ >::FragmentShader = FragmentShader_

Definition at line 169 of file pipeline.h.

## ◆ VertexShader

template<class VertexShader_ , class FragmentShader_ >

using impeller::RenderPipelineHandle< VertexShader_, FragmentShader_ >::VertexShader = VertexShader_

Definition at line 168 of file pipeline.h.

## Constructor & Destructor Documentation

## ◆ RenderPipelineHandle() [1/3]

template<class VertexShader_ , class FragmentShader_ >

impeller::RenderPipelineHandle< VertexShader_, FragmentShader_ >::RenderPipelineHandle | ( | const Context & | context,
|  | bool | async = `true`
| ) |  |
| inline explicit

Definition at line 172 of file pipeline.h.

173 : GenericRenderPipelineHandle(CreatePipelineFuture(
174 context,
175 Builder::MakeDefaultPipelineDescriptor(context),
176 async)) {}
impeller::GenericRenderPipelineHandle::GenericRenderPipelineHandle
GenericRenderPipelineHandle(const Context &context, std::optional< PipelineDescriptor > desc, bool async=true)
Definition: pipeline.h:117
impeller::CreatePipelineFuture
PipelineFuture< PipelineDescriptor > CreatePipelineFuture(const Context &context, std::optional< PipelineDescriptor > desc, bool async)
Create a pipeline for the given descriptor.
Definition: pipeline.cc:24
impeller::PipelineBuilder::MakeDefaultPipelineDescriptor
static std::optional< PipelineDescriptor > MakeDefaultPipelineDescriptor(const Context &context, const std::vector< Scalar > &constants={})
Create a default pipeline descriptor using the combination reflected shader information....
Definition: pipeline_builder.h:50

## ◆ RenderPipelineHandle() [2/3]

template<class VertexShader_ , class FragmentShader_ >

impeller::RenderPipelineHandle< VertexShader_, FragmentShader_ >::RenderPipelineHandle | ( | const Context & | context,
|  | std::optional< PipelineDescriptor > | desc,
|  | bool | async = `true`
| ) |  |
| inline explicit

Definition at line 178 of file pipeline.h.

181 : GenericRenderPipelineHandle(context, std::move(desc), async) {}

## ◆ RenderPipelineHandle() [3/3]

template<class VertexShader_ , class FragmentShader_ >

impeller::RenderPipelineHandle< VertexShader_, FragmentShader_ >::RenderPipelineHandle | ( | PipelineFuture< PipelineDescriptor > | future | ) |
| inline explicit

Definition at line 183 of file pipeline.h.

184 : GenericRenderPipelineHandle(std::move(future)) {}

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

- impeller/renderer/pipeline.h