Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
third_party
skia
src
gpu
graphite
DescriptorData.h
Go to the documentation of this file.
1
/*
2
* Copyright 2023 Google LLC
3
*
4
* Use of this source code is governed by a BSD-style license that can be
5
* found in the LICENSE file.
6
*/
7
8
#ifndef skgpu_graphite_DescriptorTypes_DEFINED
9
#define skgpu_graphite_DescriptorTypes_DEFINED
10
11
#include "
src/base/SkEnumBitMask.h
"
12
13
namespace
skgpu::graphite
{
14
15
/**
16
* Types of descriptors supported within graphite
17
*/
18
enum class
DescriptorType
: uint8_t {
19
kUniformBuffer
= 0,
20
kTextureSampler
,
21
kTexture
,
22
kCombinedTextureSampler
,
23
kStorageBuffer
,
24
kInputAttachment
,
25
26
kLast
=
kInputAttachment
,
27
};
28
static
constexpr
int
kDescriptorTypeCount
= (
int
)(
DescriptorType::kLast
) + 1;
29
30
enum class
PipelineStageFlags
: uint8_t {
31
kVertexShader
= 0b001,
32
kFragmentShader
= 0b010,
33
kCompute
= 0b100,
34
};
35
SK_MAKE_BITMASK_OPS
(
PipelineStageFlags
);
36
37
struct
DescriptorData
{
38
DescriptorData
(
DescriptorType
descType,
39
uint32_t descCount,
40
int
bindingIdx,
41
SkEnumBitMask<PipelineStageFlags>
stageFlags)
42
:
type
(descType)
43
,
count
(descCount)
44
,
bindingIndex
(bindingIdx)
45
,
pipelineStageFlags
(stageFlags) {}
46
47
DescriptorType
type
;
48
uint32_t
count
;
49
int
bindingIndex
;
50
SkEnumBitMask<PipelineStageFlags>
pipelineStageFlags
;
51
};
52
53
};
// namespace skgpu::graphite
54
55
#endif
// skgpu_graphite_DescriptorTypes_DEFINED
SkEnumBitMask.h
SK_MAKE_BITMASK_OPS
#define SK_MAKE_BITMASK_OPS(E)
Definition
SkEnumBitMask.h:68
int
Type::kYUV Type::kRGBA() int(0.7 *637)
SkEnumBitMask
Definition
SkEnumBitMask.h:34
skgpu::graphite
Definition
BoundsManagerBench.cpp:27
skgpu::graphite::BuiltInCodeSnippetID::kLast
@ kLast
skgpu::graphite::PipelineStageFlags
PipelineStageFlags
Definition
DescriptorData.h:30
skgpu::graphite::PipelineStageFlags::kCompute
@ kCompute
skgpu::graphite::PipelineStageFlags::kFragmentShader
@ kFragmentShader
skgpu::graphite::PipelineStageFlags::kVertexShader
@ kVertexShader
skgpu::graphite::DescriptorType
DescriptorType
Definition
DescriptorData.h:18
skgpu::graphite::DescriptorType::kTextureSampler
@ kTextureSampler
skgpu::graphite::DescriptorType::kTexture
@ kTexture
skgpu::graphite::DescriptorType::kCombinedTextureSampler
@ kCombinedTextureSampler
skgpu::graphite::DescriptorType::kLast
@ kLast
skgpu::graphite::DescriptorType::kUniformBuffer
@ kUniformBuffer
skgpu::graphite::DescriptorType::kInputAttachment
@ kInputAttachment
skgpu::graphite::DescriptorType::kStorageBuffer
@ kStorageBuffer
skgpu::graphite::kDescriptorTypeCount
static constexpr int kDescriptorTypeCount
Definition
DescriptorData.h:28
skgpu::graphite::DescriptorData
Definition
DescriptorData.h:37
skgpu::graphite::DescriptorData::type
DescriptorType type
Definition
DescriptorData.h:47
skgpu::graphite::DescriptorData::bindingIndex
int bindingIndex
Definition
DescriptorData.h:49
skgpu::graphite::DescriptorData::pipelineStageFlags
SkEnumBitMask< PipelineStageFlags > pipelineStageFlags
Definition
DescriptorData.h:50
skgpu::graphite::DescriptorData::count
uint32_t count
Definition
DescriptorData.h:48
skgpu::graphite::DescriptorData::DescriptorData
DescriptorData(DescriptorType descType, uint32_t descCount, int bindingIdx, SkEnumBitMask< PipelineStageFlags > stageFlags)
Definition
DescriptorData.h:38
Generated on Fri Apr 26 2024 06:17:17 for Flutter Engine by
1.9.8