Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
GrBufferTransferRenderTask.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 GrBufferTransferRenderTask_DEFINED
9#define GrBufferTransferRenderTask_DEFINED
10
12
13class GrGpuBuffer;
14
16public:
18 size_t srcOffset,
20 size_t dstOffset,
21 size_t size);
22
24
25private:
27 size_t srcOffset,
29 size_t dstOffset,
30 size_t size);
31
32 bool onIsUsed(GrSurfaceProxy* proxy) const override { return false; }
33 void gatherProxyIntervals(GrResourceAllocator*) const override {} // no proxies
34 ExpectedOutcome onMakeClosed(GrRecordingContext*, SkIRect* targetUpdateBounds) override {
35 return ExpectedOutcome::kTargetUnchanged; // no target
36 }
37 bool onExecute(GrOpFlushState*) override;
38
39#if defined(GR_TEST_UTILS)
40 const char* name() const final { return "BufferTransfer"; }
41#endif
42#ifdef SK_DEBUG
43 void visitProxies_debugOnly(const GrVisitProxyFunc&) const override {}
44#endif
45
48
49 size_t fSrcOffset;
50 size_t fDstOffset;
51 size_t fSize;
52};
53
54#endif
std::function< void(GrSurfaceProxy *, skgpu::Mipmapped)> GrVisitProxyFunc
bool onExecute(GrOpFlushState *) override
~GrBufferTransferRenderTask() override
static sk_sp< GrRenderTask > Make(sk_sp< GrGpuBuffer > src, size_t srcOffset, sk_sp< GrGpuBuffer > dst, size_t dstOffset, size_t size)
bool onIsUsed(GrSurfaceProxy *proxy) const override
void gatherProxyIntervals(GrResourceAllocator *) const override
ExpectedOutcome onMakeClosed(GrRecordingContext *, SkIRect *targetUpdateBounds) override
const char * name
Definition fuchsia.cc:50