1 /* 2 * Copyright 2019 Google Inc. 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 #include "include/private/gpu/ganesh/GrImageContext.h" 8 9 #include "include/core/SkRefCnt.h" 10 #include "include/gpu/ganesh/GrContextThreadSafeProxy.h" 11 #include "src/gpu/ganesh/GrContextThreadSafeProxyPriv.h" 12 13 #include <utility> 14 GrImageContext(sk_sp<GrContextThreadSafeProxy> proxy)15GrImageContext::GrImageContext(sk_sp<GrContextThreadSafeProxy> proxy) 16 : GrContext_Base(std::move(proxy)) { 17 } 18 ~GrImageContext()19GrImageContext::~GrImageContext() {} 20 abandonContext()21void GrImageContext::abandonContext() { 22 fThreadSafeProxy->priv().abandonContext(); 23 } 24 abandoned()25bool GrImageContext::abandoned() { 26 return fThreadSafeProxy->priv().abandoned(); 27 } 28 MakeForPromiseImage(sk_sp<GrContextThreadSafeProxy> tsp)29sk_sp<GrImageContext> GrImageContext::MakeForPromiseImage(sk_sp<GrContextThreadSafeProxy> tsp) { 30 return sk_sp<GrImageContext>(new GrImageContext(std::move(tsp))); 31 } 32