gramods
modules
gmGraphics
include
gmGraphics
YuvDecodeTexture.hh
1
2
3
#ifndef GRAMODS_GRAPHICS_YUVDECODETEXTURE
4
#define GRAMODS_GRAPHICS_YUVDECODETEXTURE
5
6
// Required before gmCore/OFactory.hh for some compilers
7
#include <gmCore/io_float.hh>
8
#include <gmCore/io_eigen.hh>
9
10
#include <gmGraphics/Texture.hh>
11
12
#include <gmCore/OFactory.hh>
13
14
#include <memory>
15
16
BEGIN_NAMESPACE_GMGRAPHICS;
17
21
class
YuvDecodeTexture
22
:
public
gmGraphics::Texture
{
23
24
public
:
25
26
YuvDecodeTexture
();
27
43
GLuint updateTexture(
size_t
frame_number,
Eye
eye)
override
;
44
48
void
setTexture(std::shared_ptr<Texture> texture);
49
58
void
setYuvToRgb(Eigen::Matrix3f m);
59
65
void
setUvRange(
gmCore::float2
v);
66
72
void
traverse(
Visitor
*visitor)
override
;
73
74
GM_OFI_DECLARE;
75
76
private
:
77
78
struct
Impl
;
79
std::unique_ptr<Impl> _impl;
80
};
81
82
END_NAMESPACE_GMGRAPHICS;
83
84
#endif
gramods::gmGraphics::Texture
The base of classes providing texture data for rendering.
Definition:
Texture.hh:18
gramods::gmGraphics::YuvDecodeTexture
Decoder of Yuv encoded texture into a new texture.
Definition:
YuvDecodeTexture.hh:22
gramods::gmCore::float2
std::array< float, 2 > float2
Array of 2 float.
Definition:
io_float.hh:9
gramods::gmCore::Object::Visitor
The visitor of a design pattern for automatic traversal.
Definition:
Object.hh:75
gramods::gmGraphics::Eye
An indexed eye that can be rendered.
Definition:
Eye.hh:20
gramods::gmGraphics::YuvDecodeTexture::Impl
Definition:
YuvDecodeTexture.cpp:18
Generated by
1.9.1