vdr
2.2.0
|
#include <limits.h>
#include <stdio.h>
#include <stdint.h>
#include "config.h"
#include "font.h"
#include "thread.h"
#include "tools.h"
Go to the source code of this file.
Classes | |
class | cPalette |
class | cBitmap |
struct | tArea |
class | cPoint |
class | cSize |
class | cRect |
class | cImage |
class | cPixmap |
class | cPixmapMutexLock |
class | cPixmapMemory |
class | cOsd |
class | cOsdProvider |
class | cTextScroller |
Macros | |
#define | OSD_LEVEL_DEFAULT 0 |
#define | OSD_LEVEL_SUBTITLES 10 |
#define | MAXNUMCOLORS 256 |
#define | ALPHA_TRANSPARENT 0x00 |
#define | ALPHA_OPAQUE 0xFF |
#define | IS_OPAQUE(c) ((c >> 24) == ALPHA_OPAQUE) |
#define | TEXT_ALIGN_BORDER 10 |
#define | MAXPIXMAPLAYERS 8 |
#define | LOCK_PIXMAPS cPixmapMutexLock PixmapMutexLock |
#define | MAXOSDAREAS 16 |
#define | MAXOSDIMAGES 64 |
Typedefs | |
typedef uint32_t | tColor |
typedef uint8_t | tIndex |
Enumerations | |
enum | { clrTransparent = 0x00000000, clrGray50 = 0x7F000000, clrBlack = 0xFF000000, clrRed = 0xFFFC1414, clrGreen = 0xFF24FC24, clrYellow = 0xFFFCC024, clrMagenta = 0xFFB000FC, clrBlue = 0xFF0000FC, clrCyan = 0xFF00FCFC, clrWhite = 0xFFFCFCFC } |
enum | eOsdError { oeOk, oeTooManyAreas, oeTooManyColors, oeBppNotSupported, oeAreasOverlap, oeWrongAlignment, oeOutOfMemory, oeWrongAreaSize, oeUnknown } |
enum | eTextAlignment { taCenter = 0x00, taLeft = 0x01, taRight = 0x02, taTop = 0x04, taBottom = 0x08, taBorder = 0x10, taDefault = taTop | taLeft } |
Functions | |
tColor | ArgbToColor (uint8_t A, uint8_t R, uint8_t G, uint8_t B) |
tColor | RgbToColor (uint8_t R, uint8_t G, uint8_t B) |
tColor | RgbToColor (double R, double G, double B) |
tColor | RgbShade (tColor Color, double Factor) |
tColor | HsvToColor (double H, double S, double V) |
tColor | AlphaBlend (tColor ColorFg, tColor ColorBg, uint8_t AlphaLayer=ALPHA_OPAQUE) |
#define ALPHA_OPAQUE 0xFF |
Definition at line 26 of file osd.h.
Referenced by cTrueColorDemo::Action(), AlphaBlend(), cPixmap::cPixmap(), RgbToColor(), and cPixmap::SetAlpha().
#define ALPHA_TRANSPARENT 0x00 |
Definition at line 25 of file osd.h.
Referenced by cPixmapMemory::Render(), and cPixmap::SetAlpha().
#define IS_OPAQUE | ( | c | ) | ((c >> 24) == ALPHA_OPAQUE) |
Definition at line 27 of file osd.h.
Referenced by cPixmapMemory::DrawPixel().
#define LOCK_PIXMAPS cPixmapMutexLock PixmapMutexLock |
Definition at line 677 of file osd.h.
Referenced by cOsd::AddPixmap(), cOsd::CreatePixmap(), cOsd::DestroyPixmap(), cOsdProvider::DropImageData(), cHdffOsdRaw::Flush(), cOsdProvider::GetImageData(), cTrueColorDemo::ProcessKey(), cOsd::RenderPixmaps(), and cOsdProvider::StoreImageData().
#define MAXNUMCOLORS 256 |
Definition at line 24 of file osd.h.
Referenced by cPalette::SetAntiAliasGranularity(), cBitmap::SetXpm(), and cBitmap::ShrinkBpp().
#define MAXOSDAREAS 16 |
Definition at line 707 of file osd.h.
Referenced by cOsd::CanHandleAreas(), and cDvbSubtitleBitmaps::Draw().
#define MAXOSDIMAGES 64 |
Definition at line 946 of file osd.h.
Referenced by cOsdProvider::DropImageData(), cOsd::Flush(), cOsdProvider::GetImageData(), and cOsdProvider::StoreImageData().
#define MAXPIXMAPLAYERS 8 |
Definition at line 452 of file osd.h.
Referenced by cPixmap::cPixmap(), cOsd::RenderPixmaps(), and cPixmap::SetLayer().
#define OSD_LEVEL_DEFAULT 0 |
Definition at line 21 of file osd.h.
Referenced by cOsd::IsOpen(), cOsdProvider::NewOsd(), and cOsdProvider::ProvidesTrueColor().
#define OSD_LEVEL_SUBTITLES 10 |
Definition at line 22 of file osd.h.
Referenced by cDvbSubtitleConverter::AssertOsd(), and cPictureControl::DisplayCaption().
#define TEXT_ALIGN_BORDER 10 |
Definition at line 28 of file osd.h.
Referenced by cHdffOsd::DrawText(), cBitmap::DrawText(), and cPixmapMemory::DrawText().
anonymous enum |
enum eOsdError |
enum eTextAlignment |
tColor AlphaBlend | ( | tColor | ColorFg, |
tColor | ColorBg, | ||
uint8_t | AlphaLayer = ALPHA_OPAQUE |
||
) |
Definition at line 81 of file osd.c.
References ALPHA_OPAQUE, AlphaBlend(), AlphaLutAlpha, and AlphaLutFactors.
Referenced by AlphaBlend(), cPixmapMemory::DrawPixel(), cFreetypeFont::DrawText(), cPixmapMemory::Render(), and RgbToColor().
|
inline |
Definition at line 58 of file osd.h.
Referenced by cTrueColorDemo::Action(), cSubtitleClut::cSubtitleClut(), and cSubtitleClut::ParsePgs().
tColor HsvToColor | ( | double | H, |
double | S, | ||
double | V | ||
) |
Converts the given Hue (0..360), Saturation (0..1) and Value (0..1) to an RGB tColor value.
The alpha value of the result is 0x00, so the caller may need to set it accordingly.
Definition at line 19 of file osd.c.
References RgbToColor().
Referenced by cTrueColorDemo::Action(), and RgbToColor().
Returns a brighter (Factor > 0) or darker (Factor < 0) version of the given Color.
If Factor is 0.0, the return value is the unchanged Color, If Factor is 1.0, white is returned. If Factor is -1.0, black is returned. The alpha value of Color is returned unchanged.
Definition at line 43 of file osd.c.
References constrain(), and min().
Referenced by RgbToColor().
|
inline |
Definition at line 63 of file osd.h.
Referenced by HsvToColor(), and RgbToColor().
|
inline |
Definition at line 68 of file osd.h.
References ALPHA_OPAQUE, AlphaBlend(), HsvToColor(), RgbShade(), and RgbToColor().