Mir
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
examples
image_renderer.h
Go to the documentation of this file.
1
/*
2
* Copyright © 2012 Canonical Ltd.
3
*
4
* This program is free software: you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License version 3 as
6
* published by the Free Software Foundation.
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15
*
16
* Authored by: Alexandros Frantzis <alexandros.frantzis@canonical.com>
17
*/
18
19
#ifndef MIR_TOOLS_IMAGE_RENDERER_H_
20
#define MIR_TOOLS_IMAGE_RENDERER_H_
21
22
#include "
mir/geometry/size.h
"
23
24
#include <GLES2/gl2.h>
25
#include <cstdint>
26
27
namespace
mir
28
{
29
namespace
tools
30
{
31
32
class
ImageRenderer
33
{
34
public
:
35
ImageRenderer
(
const
uint8_t*
pixel_data
,
mir::geometry::Size
size
,
36
uint32_t
bytes_per_pixel
);
37
38
void
render
();
39
40
private
:
41
class
Resources
42
{
43
public
:
44
~Resources();
45
void
setup();
46
47
GLuint vertex_shader;
48
GLuint fragment_shader;
49
GLuint program;
50
GLuint position_attr_loc;
51
GLuint vertex_attribs_vbo;
52
GLuint texture;
53
};
54
55
Resources resources;
56
};
57
58
}
59
}
60
61
#endif
/* MIR_TOOLS_IMAGE_RENDERER_H_ */
Copyright © 2012,2013 Canonical Ltd.
Generated on Tue Oct 15 00:23:28 UTC 2013