| /* | |
| * Copyright 2022 Google LLC | |
| * | |
| * Use of this source code is governed by a BSD-style license that can be | |
| * found in the LICENSE file. | |
| */ | |
| #include "src/gpu/graphite/task/ClearBuffersTask.h" | |
| #include "src/gpu/graphite/CommandBuffer.h" | |
| namespace skgpu::graphite { | |
| sk_sp<ClearBuffersTask> ClearBuffersTask::Make(skia_private::TArray<BindBufferInfo> clearList) { | |
| return sk_sp<ClearBuffersTask>(new ClearBuffersTask(std::move(clearList))); | |
| } | |
| ClearBuffersTask::~ClearBuffersTask() {} | |
| Task::Status ClearBuffersTask::addCommands(Context*, | |
| CommandBuffer* commandBuffer, | |
| ReplayTargetData) { | |
| bool result = true; | |
| for (const auto& c : fClearList) { | |
| result &= commandBuffer->clearBuffer(c.fBuffer, c.fOffset, c.fSize); | |
| } | |
| return result ? Status::kSuccess : Status::kFail; | |
| } | |
| } // namespace skgpu::graphite |