Lines Matching refs:GrRenderTask

11 #include "src/gpu/GrRenderTask.h"
16 static GrSurfaceProxy* first_target(GrRenderTask* task) { return task->target(0); }
19 [[maybe_unused]] static SkString describe_task(GrRenderTask* t) {
27 [[maybe_unused]] static SkString describe_tasks(SkSpan<const sk_sp<GrRenderTask>> collection) {
29 for (const sk_sp<GrRenderTask>& t : collection) {
35 [[maybe_unused]] static SkString describe_tasks(const SkTInternalLList<GrRenderTask>& collection) {
37 for (GrRenderTask* t : collection) {
43 static void validate(SkSpan<const sk_sp<GrRenderTask>> input,
44 const SkTInternalLList<GrRenderTask>& llist) {
46 SkTHashSet<GrRenderTask*> seen;
47 for (GrRenderTask* t : llist) {
49 for (GrRenderTask* dep : t->dependencies()) {
66 static bool depends_on(GrRenderTask* depender, GrRenderTask* dependee) {
90 static bool task_cluster_visit(GrRenderTask* task, SkTInternalLList<GrRenderTask>* llist,
91 SkTHashMap<GrSurfaceProxy*, GrRenderTask*>* lastTaskMap) {
107 GrRenderTask* clusterTail = (lastTaskMap->find(target) ? *lastTaskMap->find(target) : nullptr);
121 GrRenderTask* movedHead = clusterTail->fNext;
126 GrRenderTask* clusterHead = clusterTail;
135 for (GrRenderTask* moved = movedHead; moved; moved = moved->fNext) {
136 for (GrRenderTask* passed = clusterHead; passed != movedHead; passed = passed->fNext) {
144 for (GrRenderTask* moved = movedHead; moved;) {
149 GrRenderTask* nextMoved = moved->fNext;
157 bool GrClusterRenderTasks(SkSpan<const sk_sp<GrRenderTask>> input,
158 SkTInternalLList<GrRenderTask>* llist) {
167 SkTHashMap<GrSurfaceProxy*, GrRenderTask*> lastTaskMap;