MythTV  master
mythopenglinterop.h
Go to the documentation of this file.
1 #ifndef MYTHOPENGLINTEROP_H
2 #define MYTHOPENGLINTEROP_H
3 
4 // Qt
5 #include <QObject>
6 
7 // MythTV
9 #include "referencecounter.h"
10 #include "videoouttypes.h"
11 #include "mythframe.h"
13 #include "mythinteropgpu.h"
14 
16 
18 {
19  Q_OBJECT
20 
21  public:
22  static void GetTypes(MythRender* Render, MythInteropGPU::InteropMap& Types);
23  static vector<MythVideoTextureOpenGL*> Retrieve(MythRenderOpenGL *Context,
24  MythVideoColourSpace *ColourSpace,
26  FrameScanType Scan);
27 
28  ~MythOpenGLInterop() override;
29  virtual vector<MythVideoTextureOpenGL*> Acquire(MythRenderOpenGL *Context,
30  MythVideoColourSpace *ColourSpace,
32 
33  protected:
35  virtual void DeleteTextures ();
36 
37  protected:
39  QHash<unsigned long long, vector<MythVideoTextureOpenGL*> > m_openglTextures;
40 };
41 
42 #endif
Frame
Definition: zmdefines.h:93
FrameScanType
FrameScanType
Definition: videoouttypes.h:94
mythframe.h
mythvideotextureopengl.h
MythOpenGLInterop::~MythOpenGLInterop
~MythOpenGLInterop() override
Definition: mythopenglinterop.cpp:123
MythInteropGPU::InteropMap
std::map< VideoFrameType, InteropTypes > InteropMap
Definition: mythinteropgpu.h:45
mythrenderopengl.h
MythPlayerUI
Definition: mythplayerui.h:10
mythinteropgpu.h
MythOpenGLInterop
Definition: mythopenglinterop.h:17
MythOpenGLInterop::m_openglTextures
QHash< unsigned long long, vector< MythVideoTextureOpenGL * > > m_openglTextures
Definition: mythopenglinterop.h:39
MythOpenGLInterop::m_openglContext
MythRenderOpenGL * m_openglContext
Definition: mythopenglinterop.h:38
videoouttypes.h
MythOpenGLInterop::Retrieve
static vector< MythVideoTextureOpenGL * > Retrieve(MythRenderOpenGL *Context, MythVideoColourSpace *ColourSpace, MythVideoFrame *Frame, FrameScanType Scan)
Definition: mythopenglinterop.cpp:67
referencecounter.h
MythRenderOpenGL
Definition: mythrenderopengl.h:99
MythOpenGLInterop::MythOpenGLInterop
MythOpenGLInterop(MythRenderOpenGL *Context, InteropType Type, MythPlayerUI *Player=nullptr)
Definition: mythopenglinterop.cpp:117
MythRender
Definition: mythrender_base.h:23
MythOpenGLInterop::DeleteTextures
virtual void DeleteTextures()
Definition: mythopenglinterop.cpp:135
Player
Definition: zmliveplayer.h:34
MythVideoFrame
Definition: mythframe.h:88
MythInteropGPU::InteropType
InteropType
Definition: mythinteropgpu.h:26
MythOpenGLInterop::Acquire
virtual vector< MythVideoTextureOpenGL * > Acquire(MythRenderOpenGL *Context, MythVideoColourSpace *ColourSpace, MythVideoFrame *Frame, FrameScanType Scan)
Definition: mythopenglinterop.cpp:128
MythVideoColourSpace
MythVideoColourSpace contains a QMatrix4x4 that can convert YCbCr data to RGB.
Definition: mythvideocolourspace.h:18
MythOpenGLInterop::GetTypes
static void GetTypes(MythRender *Render, MythInteropGPU::InteropMap &Types)
Definition: mythopenglinterop.cpp:32
MythInteropGPU
Definition: mythinteropgpu.h:21