Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
third_party
skia
src
gpu
graphite
task
SynchronizeToCpuTask.h
Go to the documentation of this file.
1
/*
2
* Copyright 2022 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_task_SynchronizeToCpuTask_DEFINED
9
#define skgpu_graphite_task_SynchronizeToCpuTask_DEFINED
10
11
#include "
src/gpu/graphite/Buffer.h
"
12
#include "
src/gpu/graphite/task/Task.h
"
13
14
namespace
skgpu::graphite
{
15
16
class
Buffer;
17
18
/**
19
* Task that synchronizes the contents of a buffer from the GPU to the CPU. This task ensures that
20
* all modifications to the buffer made the GPU are visible from the CPU. This task may not result
21
* in any work if the underlying buffer does not require synchronization (e.g. a shared memory
22
* buffer).
23
*/
24
class
SynchronizeToCpuTask
final :
public
Task
{
25
public
:
26
static
sk_sp<SynchronizeToCpuTask>
Make
(
sk_sp<Buffer>
);
27
~SynchronizeToCpuTask
()
override
;
28
29
Status
prepareResources
(
ResourceProvider
*,
const
RuntimeEffectDictionary
*)
override
{
30
return
Status::kSuccess;
31
}
32
33
Status
addCommands
(
Context
*,
CommandBuffer
*, ReplayTargetData)
override
;
34
35
private
:
36
explicit
SynchronizeToCpuTask
(
sk_sp<Buffer>
buffer
) : fBuffer(
std
::move(
buffer
)) {}
37
38
sk_sp<Buffer>
fBuffer;
39
};
40
41
}
// namespace skgpu::graphite
42
43
#endif
// skgpu_graphite_SynchronizeToCpuTask_DEFINED
Buffer.h
Task.h
sk_sp
Definition
SkRefCnt.h:220
skgpu::graphite::CommandBuffer
Definition
CommandBuffer.h:38
skgpu::graphite::Context
Definition
Context.h:43
skgpu::graphite::ResourceProvider
Definition
ResourceProvider.h:50
skgpu::graphite::RuntimeEffectDictionary
Definition
RuntimeEffectDictionary.h:22
skgpu::graphite::SynchronizeToCpuTask
Definition
SynchronizeToCpuTask.h:24
skgpu::graphite::SynchronizeToCpuTask::~SynchronizeToCpuTask
~SynchronizeToCpuTask() override
Definition
SynchronizeToCpuTask.cpp:19
skgpu::graphite::SynchronizeToCpuTask::Make
static sk_sp< SynchronizeToCpuTask > Make(sk_sp< Buffer >)
Definition
SynchronizeToCpuTask.cpp:15
skgpu::graphite::SynchronizeToCpuTask::addCommands
Status addCommands(Context *, CommandBuffer *, ReplayTargetData) override
Definition
SynchronizeToCpuTask.cpp:21
skgpu::graphite::SynchronizeToCpuTask::prepareResources
Status prepareResources(ResourceProvider *, const RuntimeEffectDictionary *) override
Definition
SynchronizeToCpuTask.h:29
skgpu::graphite::Task
Definition
Task.h:22
skgpu::graphite::Task::Status
Status
Definition
Task.h:30
buffer
static const uint8_t buffer[]
Definition
fl_pixel_buffer_texture_test.cc:44
skgpu::graphite
Definition
BoundsManagerBench.cpp:27
std
Definition
ref_ptr.h:256
Generated on Fri Apr 26 2024 06:17:20 for Flutter Engine by
1.9.8