Flutter Engine
Loading...
Searching...
No Matches
image_external_texture_gl_impeller.h
Go to the documentation of this file.
1
// Copyright 2013 The Flutter Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file.
4
5
#ifndef FLUTTER_SHELL_PLATFORM_ANDROID_IMAGE_EXTERNAL_TEXTURE_GL_IMPELLER_H_
6
#define FLUTTER_SHELL_PLATFORM_ANDROID_IMAGE_EXTERNAL_TEXTURE_GL_IMPELLER_H_
7
8
#include <memory>
9
#include <optional>
10
11
#include "
flutter/fml/macros.h
"
12
#include "
flutter/impeller/renderer/backend/gles/context_gles.h
"
13
#include "
flutter/shell/platform/android/image_external_texture_gl.h
"
14
#include "
flutter/shell/platform/android/jni/platform_view_android_jni.h
"
15
16
namespace
flutter
{
17
18
class
ImageExternalTextureGLImpeller
:
public
ImageExternalTextureGL
{
19
public
:
20
ImageExternalTextureGLImpeller
(
21
const
std::shared_ptr<impeller::ContextGLES>& context,
22
int64_t
id
,
23
const
fml::jni::ScopedJavaGlobalRef<jobject>
&
24
hardware_buffer_texture_entry,
25
const
std::shared_ptr<PlatformViewAndroidJNI>& jni_facade,
26
ImageExternalTexture::ImageLifecycle
lifecycle);
27
28
private
:
29
// |ImageExternalTexture|
30
void
Attach(
PaintContext
& context)
override
;
31
32
// |ImageExternalTexture|
33
void
Detach()
override
;
34
35
// |ImageExternalTextureGL|
36
sk_sp<flutter::DlImage> CreateDlImage(
37
PaintContext
& context,
38
const
SkRect& bounds,
39
std::optional<HardwareBufferKey>
id
,
40
impeller::UniqueEGLImageKHR
&& egl_image)
override
;
41
42
const
std::shared_ptr<impeller::ContextGLES> impeller_context_;
43
44
FML_DISALLOW_COPY_AND_ASSIGN
(
ImageExternalTextureGLImpeller
);
45
};
46
47
}
// namespace flutter
48
49
#endif
// FLUTTER_SHELL_PLATFORM_ANDROID_IMAGE_EXTERNAL_TEXTURE_GL_IMPELLER_H_
flutter::ImageExternalTextureGL
Definition
image_external_texture_gl.h:18
flutter::ImageExternalTextureGLImpeller
Definition
image_external_texture_gl_impeller.h:18
flutter::ImageExternalTexture::ImageLifecycle
ImageLifecycle
Whether the last image should be reset when the context is destroyed.
Definition
image_external_texture.h:39
fml::UniqueObject< EGLImageKHRWithDisplay, EGLImageKHRWithDisplayTraits >
fml::jni::ScopedJavaGlobalRef
Definition
scoped_java_ref.h:163
macros.h
FML_DISALLOW_COPY_AND_ASSIGN
#define FML_DISALLOW_COPY_AND_ASSIGN(TypeName)
Definition
macros.h:27
image_external_texture_gl.h
flutter
Definition
asset_manager.cc:10
platform_view_android_jni.h
context_gles.h
flutter::Texture::PaintContext
Definition
texture.h:39
shell
platform
android
image_external_texture_gl_impeller.h
Generated on Thu Nov 6 2025 16:11:25 for Flutter Engine by
1.9.8