102 return cOsd::SetAreas(
areas,
n);
187 if (w > width -
xs -
x1) {
194 if (h > height -
ys -
y1) {
195 h = height -
ys -
y1;
205 for (y =
y1; y <=
y2; ++y) {
206 for (x =
x1; x <=
x2; ++x) {
233 x =
pm->ViewPort().X();
234 y =
pm->ViewPort().Y();
235 w =
pm->ViewPort().Width();
236 h =
pm->ViewPort().Height();
256 if (h > Height() - y)
284 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.
int m_osdLevel
current osd level
cSoftHdDevice * m_pDevice
pointer to the cSoftHdDevice object
bool m_dirty
flag to force redrawing everything
void OsdDrawARGB(int, int, int, int, int, const uint8_t *, int, int)
Draw an OSD pixmap.
virtual void GetOsdSize(int &, int &, double &)
Returns the width, height and aspect ratio the OSD.
void OsdClose(void)
Close the OSD.
#define LOGDEBUG2
log to LOG_DEBUG and add a prefix
virtual void Flush(void)
Actually commit all data to the OSD hardware.
virtual ~cSoftOsd(void)
Shut down the OSD.
virtual eOsdError SetAreas(const tArea *, int)
Set the sub-areas to the given areas.
virtual void SetActive(bool)
Sets this OSD to be the active one.
cSoftOsd(int, int, uint, cSoftHdDevice *)
Initializes a software based OSD with the given coordinates.
Output Device Header File.
Software OSD Header File.