94 return cOsd::SetAreas(
areas,
n);
179 if (w > width -
xs -
x1) {
186 if (h > height -
ys -
y1) {
187 h = height -
ys -
y1;
197 for (y =
y1; y <=
y2; ++y) {
198 for (x =
x1; x <=
x2; ++x) {
225 x =
pm->ViewPort().X();
226 y =
pm->ViewPort().Y();
227 w =
pm->ViewPort().Width();
228 h =
pm->ViewPort().Height();
248 if (h > Height() - y)
276 LOGDEBUG2(
L_OSD,
"osd: %s: draw %dx%d%+d%+d*%d -> %+d%+d %p",
__FUNCTION__, w, h,
xp,
yp,
stride, x, y,
pm->Data());
Output Device Implementation.
void OsdDraw(int, int, int, int, int, const uint8_t *, int, int)
Draw an OSD pixmap.
void OsdClose(void)
Close the OSD.
virtual void GetOsdSize(int &, int &, double &)
Returns the width, height and aspect ratio the OSD should have.
virtual void Flush(void)
Actually commit all data to the OSD hardware.
cSoftOsd(int, int, uint, cOutputDevice *)
Initializes a software based OSD with the given coordinates.
int m_osdLevel
current osd level
virtual ~cSoftOsd(void)
Shut down the OSD.
virtual eOsdError SetAreas(const tArea *, int)
Set the sub-areas to the given areas.
cOutputDevice * m_pDevice
pointer to the cOutputDevice object
virtual void SetActive(bool)
Sets this OSD to be the active one.
bool m_dirty
flag to force redrawing everything
Output Device Header File.
#define LOGDEBUG2
log to LOG_DEBUG and add a prefix
Software OSD Header File.