Flutter Linux Embedder
fl_framebuffer.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_LINUX_FL_FRAMEBUFFER_H_
6
#define FLUTTER_SHELL_PLATFORM_LINUX_FL_FRAMEBUFFER_H_
7
8
#include <epoxy/gl.h>
9
#include <glib-object.h>
10
11
G_BEGIN_DECLS
12
13
G_DECLARE_FINAL_TYPE
(FlFramebuffer, fl_framebuffer,
FL
, FRAMEBUFFER, GObject)
14
15
/**
16
* FlFramebuffer:
17
*
18
* #FlFramebuffer creates framebuffers and their backing textures
19
* for use by the Flutter compositor.
20
*/
21
22
/**
23
* fl_framebuffer_new:
24
* @format: format, e.g. GL_RGB, GL_BGR
25
* @width: width of texture.
26
* @height: height of texture.
27
*
28
* Creates a new frame buffer. Requires a valid OpenGL context to create.
29
*
30
* Returns: a new #FlFramebuffer.
31
*/
32
FlFramebuffer*
fl_framebuffer_new
(GLint
format
,
size_t
width
,
size_t
height
);
33
34
/**
35
* fl_framebuffer_get_id:
36
* @framebuffer: an #FlFramebuffer.
37
*
38
* Gets the ID for this framebuffer.
39
*
40
* Returns: OpenGL framebuffer id or 0 if creation failed.
41
*/
42
GLuint
fl_framebuffer_get_id
(FlFramebuffer* framebuffer);
43
44
/**
45
* fl_framebuffer_get_texture_id:
46
* @framebuffer: an #FlFramebuffer.
47
*
48
* Gets the ID of the texture associated with this framebuffer.
49
*
50
* Returns: OpenGL texture id or 0 if creation failed.
51
*/
52
GLuint
fl_framebuffer_get_texture_id
(FlFramebuffer* framebuffer);
53
54
/**
55
* fl_framebuffer_get_target:
56
* @framebuffer: an #FlFramebuffer.
57
*
58
* Gets target texture (example GL_TEXTURE_2D or GL_TEXTURE_RECTANGLE).
59
*
60
* Returns: target texture.
61
*/
62
GLenum
fl_framebuffer_get_target
(FlFramebuffer* framebuffer);
63
64
/**
65
* fl_framebuffer_get_width:
66
* @framebuffer: an #FlFramebuffer.
67
*
68
* Gets the width of the framebuffer in pixels.
69
*
70
* Returns: width in pixels.
71
*/
72
size_t
fl_framebuffer_get_width
(FlFramebuffer* framebuffer);
73
74
/**
75
* fl_framebuffer_get_height:
76
* @framebuffer: an #FlFramebuffer.
77
*
78
* Gets the height of the framebuffer in pixels.
79
*
80
* Returns: height in pixels.
81
*/
82
size_t
fl_framebuffer_get_height
(FlFramebuffer* framebuffer);
83
84
G_END_DECLS
85
86
#endif // FLUTTER_SHELL_PLATFORM_LINUX_FL_FRAMEBUFFER_H_
fl_framebuffer_get_width
size_t fl_framebuffer_get_width(FlFramebuffer *framebuffer)
Definition:
fl_framebuffer.cc:81
fl_framebuffer_get_target
GLenum fl_framebuffer_get_target(FlFramebuffer *framebuffer)
Definition:
fl_framebuffer.cc:77
fl_framebuffer_get_id
GLuint fl_framebuffer_get_id(FlFramebuffer *framebuffer)
Definition:
fl_framebuffer.cc:69
G_DECLARE_FINAL_TYPE
G_BEGIN_DECLS G_DECLARE_FINAL_TYPE(FlAccessibleTextField, fl_accessible_text_field, FL, ACCESSIBLE_TEXT_FIELD, FlAccessibleNode)
fl_framebuffer_new
G_BEGIN_DECLS FlFramebuffer * fl_framebuffer_new(GLint format, size_t width, size_t height)
Definition:
fl_framebuffer.cc:42
FL
FL
Definition:
fl_binary_messenger.cc:27
height
const uint8_t uint32_t uint32_t * height
Definition:
fl_pixel_buffer_texture_test.cc:39
fl_framebuffer_get_height
size_t fl_framebuffer_get_height(FlFramebuffer *framebuffer)
Definition:
fl_framebuffer.cc:85
width
const uint8_t uint32_t * width
Definition:
fl_pixel_buffer_texture_test.cc:38
format
uint32_t uint32_t * format
Definition:
fl_texture_registrar_test.cc:41
fl_framebuffer_get_texture_id
GLuint fl_framebuffer_get_texture_id(FlFramebuffer *framebuffer)
Definition:
fl_framebuffer.cc:73
shell
platform
linux
fl_framebuffer.h
Generated by
1.8.17