1*c8dee2aaSAndroid Build Coastguard Worker /* 2*c8dee2aaSAndroid Build Coastguard Worker * Copyright 2019 Google Inc. 3*c8dee2aaSAndroid Build Coastguard Worker * 4*c8dee2aaSAndroid Build Coastguard Worker * Use of this source code is governed by a BSD-style license that can be 5*c8dee2aaSAndroid Build Coastguard Worker * found in the LICENSE file. 6*c8dee2aaSAndroid Build Coastguard Worker */ 7*c8dee2aaSAndroid Build Coastguard Worker #include "include/private/gpu/ganesh/GrImageContext.h" 8*c8dee2aaSAndroid Build Coastguard Worker 9*c8dee2aaSAndroid Build Coastguard Worker #include "include/core/SkRefCnt.h" 10*c8dee2aaSAndroid Build Coastguard Worker #include "include/gpu/ganesh/GrContextThreadSafeProxy.h" 11*c8dee2aaSAndroid Build Coastguard Worker #include "src/gpu/ganesh/GrContextThreadSafeProxyPriv.h" 12*c8dee2aaSAndroid Build Coastguard Worker 13*c8dee2aaSAndroid Build Coastguard Worker #include <utility> 14*c8dee2aaSAndroid Build Coastguard Worker GrImageContext(sk_sp<GrContextThreadSafeProxy> proxy)15*c8dee2aaSAndroid Build Coastguard WorkerGrImageContext::GrImageContext(sk_sp<GrContextThreadSafeProxy> proxy) 16*c8dee2aaSAndroid Build Coastguard Worker : GrContext_Base(std::move(proxy)) { 17*c8dee2aaSAndroid Build Coastguard Worker } 18*c8dee2aaSAndroid Build Coastguard Worker ~GrImageContext()19*c8dee2aaSAndroid Build Coastguard WorkerGrImageContext::~GrImageContext() {} 20*c8dee2aaSAndroid Build Coastguard Worker abandonContext()21*c8dee2aaSAndroid Build Coastguard Workervoid GrImageContext::abandonContext() { 22*c8dee2aaSAndroid Build Coastguard Worker fThreadSafeProxy->priv().abandonContext(); 23*c8dee2aaSAndroid Build Coastguard Worker } 24*c8dee2aaSAndroid Build Coastguard Worker abandoned()25*c8dee2aaSAndroid Build Coastguard Workerbool GrImageContext::abandoned() { 26*c8dee2aaSAndroid Build Coastguard Worker return fThreadSafeProxy->priv().abandoned(); 27*c8dee2aaSAndroid Build Coastguard Worker } 28*c8dee2aaSAndroid Build Coastguard Worker MakeForPromiseImage(sk_sp<GrContextThreadSafeProxy> tsp)29*c8dee2aaSAndroid Build Coastguard Workersk_sp<GrImageContext> GrImageContext::MakeForPromiseImage(sk_sp<GrContextThreadSafeProxy> tsp) { 30*c8dee2aaSAndroid Build Coastguard Worker return sk_sp<GrImageContext>(new GrImageContext(std::move(tsp))); 31*c8dee2aaSAndroid Build Coastguard Worker } 32