#include "third_party/blink/renderer/platform/graphics/paint_worklet_paint_dispatcher.h"
#include <utility>
#include "base/barrier_closure.h"
#include "base/containers/contains.h"
#include "base/functional/callback_helpers.h"
#include "base/synchronization/waitable_event.h"
#include "base/task/single_thread_task_runner.h"
#include "third_party/blink/public/platform/platform.h"
#include "third_party/blink/renderer/platform/graphics/paint/paint_record.h"
#include "third_party/blink/renderer/platform/instrumentation/tracing/trace_event.h"
#include "third_party/blink/renderer/platform/scheduler/public/non_main_thread.h"
#include "third_party/blink/renderer/platform/scheduler/public/post_cross_thread_task.h"
#include "third_party/blink/renderer/platform/wtf/cross_thread_copier_base.h"
#include "third_party/blink/renderer/platform/wtf/cross_thread_copier_std.h"
#include "third_party/blink/renderer/platform/wtf/cross_thread_functional.h"
#include "third_party/blink/renderer/platform/wtf/wtf.h"
namespace blink {
std::unique_ptr<PlatformPaintWorkletLayerPainter>
PaintWorkletPaintDispatcher::CreateCompositorThreadPainter(
base::WeakPtr<PaintWorkletPaintDispatcher>* paint_dispatcher) { … }
PaintWorkletPaintDispatcher::PaintWorkletPaintDispatcher() { … }
void PaintWorkletPaintDispatcher::RegisterPaintWorkletPainter(
PaintWorkletPainter* painter,
scoped_refptr<base::SingleThreadTaskRunner> painter_runner) { … }
void PaintWorkletPaintDispatcher::UnregisterPaintWorkletPainter(
int worklet_id) { … }
void PaintWorkletPaintDispatcher::DispatchWorklets(
cc::PaintWorkletJobMap worklet_job_map,
PlatformPaintWorkletLayerPainter::DoneCallback done_callback) { … }
bool PaintWorkletPaintDispatcher::HasOngoingDispatch() const { … }
void PaintWorkletPaintDispatcher::AsyncPaintDone() { … }
scoped_refptr<base::SingleThreadTaskRunner>
PaintWorkletPaintDispatcher::GetCompositorTaskRunner() { … }
}