| // Copyright 2018 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| package org.chromium.android_webview; |
| |
| import android.graphics.Canvas; |
| |
| /** |
| * Interface for functor implementation. This allows client to avoid differentiating between GL and |
| * Vulkan implementations. |
| */ |
| public interface AwFunctor { |
| /** Insert draw functor into recording canvas */ |
| boolean requestDraw(Canvas canvas); |
| |
| /** Return the raw native pointer to CompositorFrameConsumer */ |
| long getNativeCompositorFrameConsumer(); |
| |
| /** Free memory */ |
| void trimMemory(); |
| |
| /** Destroy on UI thread. Client should stop using CompositorFrameConsumer before this */ |
| void destroy(); |
| } |