vdr-plugin-softhddevice-drm-gles 1.5.9-20e15de
softhdosd.h
Go to the documentation of this file.
1
22#ifndef __SOFTOSD_H
23#define __SOFTOSD_H
24
25#ifdef USE_GLES
26#include <memory>
27#endif
28
29#include <vdr/osd.h>
30
31#ifdef USE_GLES
32class cOglThread;
33#endif
34class cSoftHdDevice;
35
36/*****************************************************************************
37 * OSD (software)
38 ****************************************************************************/
39
43class cSoftOsd:public cOsd
44{
45public:
46 cSoftOsd(int, int, uint, cSoftHdDevice *);
47 virtual ~cSoftOsd(void);
48
49 virtual eOsdError SetAreas(const tArea *, int);
50 virtual void Flush(void);
51 virtual void SetActive(bool);
52
53private:
55 bool m_dirty = false;
57};
58
59/*****************************************************************************
60 * OSD provider
61 ****************************************************************************/
62
66class cSoftOsdProvider:public cOsdProvider
67{
68public:
70 virtual ~cSoftOsdProvider();
71
72 virtual cOsd * CreateOsd(int, int, uint);
73 virtual bool ProvidesTrueColor(void);
74#ifdef USE_GLES
75 void StopOpenGlThread(void);
76 const cImage *GetImageData(int ImageHandle);
77 void OsdSizeChanged(void);
78#endif
79
80private:
81 cOsd *m_pOsd;
83#ifdef USE_GLES
84 std::shared_ptr<cOglThread> m_pOglThread;
85 bool StartOpenGlThread(void);
86#endif
87
88protected:
89#ifdef USE_GLES
90 virtual int StoreImageData(const cImage &Image);
91 virtual void DropImageData(int ImageHandle);
92#endif
93};
94
95#endif
cSoftOsdProvider - SoftHdDevice plugin OSD provider class
Definition softhdosd.h:67
virtual cOsd * CreateOsd(int, int, uint)
Create a new OSD.
virtual ~cSoftOsdProvider()
cOsdProvider destructor
cOsd * m_pOsd
pointer to single OSD (currently not really used in cSoftOsdProvider?)
Definition softhdosd.h:81
virtual bool ProvidesTrueColor(void)
Check if this OSD provider is able to handle a true color OSD.
cSoftHdDevice * m_pDevice
pointer to the cSoftHdDevice object
Definition softhdosd.h:82
cSoftOsd - SoftHdDevice plugin software OSD class
Definition softhdosd.h:44
virtual void Flush(void)
Actually commit all data to the OSD hardware.
int m_osdLevel
current osd level
Definition softhdosd.h:56
virtual ~cSoftOsd(void)
cSoftOsd destructor
Definition softhdosd.cpp:61
virtual eOsdError SetAreas(const tArea *, int)
Set the sub-areas to the given areas.
Definition softhdosd.cpp:98
cSoftHdDevice * m_pDevice
pointer to the cSoftHdDevice object
Definition softhdosd.h:54
virtual void SetActive(bool)
Sets this OSD to be the active one.
Definition softhdosd.cpp:76
bool m_dirty
flag to force redrawing everything
Definition softhdosd.h:55