Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
impeller
renderer
backend
metal
compute_pipeline_mtl.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_METAL_COMPUTE_PIPELINE_MTL_H_
6
#define FLUTTER_IMPELLER_RENDERER_BACKEND_METAL_COMPUTE_PIPELINE_MTL_H_
7
8
#include <Metal/Metal.h>
9
10
#include "flutter/fml/macros.h"
11
#include "
impeller/base/backend_cast.h
"
12
#include "
impeller/renderer/pipeline.h
"
13
14
namespace
impeller
{
15
16
class
ComputePipelineMTL
final
17
:
public
Pipeline
<ComputePipelineDescriptor>,
18
public
BackendCast
<ComputePipelineMTL,
19
Pipeline<ComputePipelineDescriptor>> {
20
public
:
21
// |Pipeline|
22
~ComputePipelineMTL
()
override
;
23
24
id<MTLComputePipelineState>
GetMTLComputePipelineState
()
const
;
25
26
private
:
27
friend
class
PipelineLibraryMTL
;
28
29
id<MTLComputePipelineState> pipeline_state_;
30
bool
is_valid_ =
false
;
31
32
ComputePipelineMTL
(std::weak_ptr<PipelineLibrary> library,
33
const
ComputePipelineDescriptor
& desc,
34
id<MTLComputePipelineState>
state
);
35
36
// |Pipeline|
37
bool
IsValid
()
const override
;
38
39
ComputePipelineMTL
(
const
ComputePipelineMTL
&) =
delete
;
40
41
ComputePipelineMTL
& operator=(
const
ComputePipelineMTL
&) =
delete
;
42
};
43
44
}
// namespace impeller
45
46
#endif
// FLUTTER_IMPELLER_RENDERER_BACKEND_METAL_COMPUTE_PIPELINE_MTL_H_
backend_cast.h
impeller::BackendCast
Definition
backend_cast.h:11
impeller::ComputePipelineDescriptor
Definition
compute_pipeline_descriptor.h:31
impeller::ComputePipelineMTL
Definition
compute_pipeline_mtl.h:19
impeller::ComputePipelineMTL::GetMTLComputePipelineState
id< MTLComputePipelineState > GetMTLComputePipelineState() const
Definition
compute_pipeline_mtl.mm:25
impeller::ComputePipelineMTL::IsValid
bool IsValid() const override
Definition
compute_pipeline_mtl.mm:21
impeller::ComputePipelineMTL::~ComputePipelineMTL
~ComputePipelineMTL() override
impeller::PipelineLibraryMTL
Definition
pipeline_library_mtl.h:17
impeller::Pipeline
Describes the fixed function and programmable aspects of rendering and compute operations performed b...
Definition
pipeline.h:49
state
AtkStateType state
Definition
fl_accessible_node.cc:10
pipeline.h
impeller
Definition
texture.h:18
Generated on Fri Apr 26 2024 06:14:12 for Flutter Engine by
1.9.8