xine-lib: xine-lib-1.2.12/src/video_out/x11osd.c File Reference

xine-lib 1.2.12

Data Structures | Macros | Functions | Variables
x11osd.c File Reference
`#include <stdarg.h>`
`#include <stdio.h>`
`#include <stdlib.h>`
`#include <string.h>`
`#include <unistd.h>`
`#include <signal.h>`
`#include <time.h>`
`#include <netinet/in.h>`
`#include <X11/Xlib.h>`
`#include <X11/Xutil.h>`
`#include <X11/extensions/shape.h>`
`#include <X11/Xatom.h>`
`#include <xine/xine_internal.h>`
`#include "x11osd.h"`

## Data Structures
struct | x11osd

## Macros
#define | LOG_MODULE "x11osd"
#define | LOG_VERBOSE
#define | X11OSD_TRANSPARENT 0xffffffff
#define | saturate(n, l, u) ((n) < (l) ? (l) : ((n) > (u) ? (u) : (n)))

## Functions
void | x11osd_expose (x11osd *osd)
void | x11osd_resize (x11osd *osd, int width, int height)
void | x11osd_drawable_changed (x11osd *osd, Window window)
static int | x11_error_handler (Display *dpy, XErrorEvent *error)
x11osd * | x11osd_create (xine_t *xine, Display *display, int screen, Window window, enum x11osd_mode mode)
void | x11osd_colorkey (x11osd *osd, uint32_t colorkey, vo_scale_t *sc)
void | x11osd_destroy (x11osd *osd)
void | x11osd_clear (x11osd *osd)
void | x11osd_blend (x11osd *osd, vo_overlay_t *overlay)

## Variables
static int | x11_error = False

## Macro Definition Documentation

## ◆ LOG_MODULE

#define LOG_MODULE "x11osd"

## ◆ LOG_VERBOSE

#define LOG_VERBOSE

## ◆ saturate

#define saturate | ( |  | n,
|  |  | l,
|  |  | u
| ) |  | ((n) < (l) ? (l) : ((n) > (u) ? (u) : (n)))

## ◆ X11OSD_TRANSPARENT

#define X11OSD_TRANSPARENT 0xffffffff

## Function Documentation

## ◆ x11_error_handler()

static int x11_error_handler | ( | Display * | dpy,
|  | XErrorEvent * | error
| ) |  |
| static

References x11_error.

Referenced by x11osd_create().

## ◆ x11osd_blend()

void x11osd_blend | ( | x11osd * | osd,
|  | vo_overlay_t * | overlay
| ) |  |

References x11osd::bitmap, x11osd::clean, x11osd::cmap, rle_elem_s::color, vo_overlay_s::color, x11osd::display, x11osd::gc, vo_overlay_s::hili_color, vo_overlay_s::hili_left, vo_overlay_s::hili_right, vo_overlay_s::hili_top, vo_overlay_s::hili_trans, rle_elem_s::len, x11osd::mask_bitmap, x11osd::mask_gc, x11osd::mode, vo_overlay_s::num_rle, OVL_PALETTE_SIZE, vo_overlay_s::rle, saturate, x11osd::screen, x11osd::shaped, vo_overlay_s::trans, x11osd::u, v, vo_overlay_s::width, width, vo_overlay_s::x, x11osd_clear(), X11OSD_SHAPED, X11OSD_TRANSPARENT, and vo_overlay_s::y.

Referenced by directfb_overlay_blend(), opengl_overlay_blend(), vidix_overlay_blend(), xshm_overlay_blend(), xv_overlay_blend(), and xxmc_overlay_blend().

## ◆ x11osd_clear()

void x11osd_clear | ( | x11osd * | osd | ) |

References x11osd::bitmap, x11osd::clean, x11osd::colorkey, x11osd::display, x11osd::gc, x11osd::height, lprintf, x11osd::mask_bitmap, x11osd::mask_gc_back, x11osd::mode, x11osd::screen, x11osd::shaped, x11osd::u, x11osd::width, X11OSD_COLORKEY, and X11OSD_SHAPED.

Referenced by directfb_overlay_begin(), opengl_overlay_begin(), vidix_overlay_begin(), x11osd_blend(), x11osd_colorkey(), x11osd_resize(), xshm_overlay_begin(), xv_overlay_begin(), and xxmc_overlay_begin().

## ◆ x11osd_colorkey()

void x11osd_colorkey | ( | x11osd * | osd,
|  | uint32_t | colorkey,
|  | vo_scale_t * | sc
| ) |  |

References _x_assert, x11osd::clean, x11osd::colorkey, x11osd::mode, x11osd::u, x11osd_clear(), X11OSD_COLORKEY, and x11osd_expose().

Referenced by open_plugin(), open_plugin_2(), and update_config_cb().

## ◆ x11osd_create()

x11osd * x11osd_create | ( | xine_t * | xine,
|  | Display * | display,
|  | int | screen,
|  | Window | window,
|  | enum x11osd_mode | mode
| ) |  |

References _, _x_assert, x11osd::bitmap, x11osd::clean, x11osd::cmap, x11osd::depth, x11osd::display, x11osd::gc, x11osd::height, x11osd::mapped, x11osd::mask_bitmap, x11osd::mask_gc, x11osd::mask_gc_back, mode(), x11osd::mode, NULL, x11osd::screen, x11osd::shaped, x11osd::u, x11osd::visual, x11osd::width, x11osd::window, x11_error, x11_error_handler(), X11OSD_COLORKEY, x11osd_expose(), X11OSD_SHAPED, x11osd::xine, XINE_VERBOSITY_DEBUG, XINE_VERBOSITY_LOG, and xprintf.

Referenced by open_plugin(), open_plugin_2(), opengl_open_plugin(), xshm_open_plugin_2(), and xxmc_check_xoverlay_type().

## ◆ x11osd_destroy()

void x11osd_destroy | ( | x11osd * | osd | ) |

References _x_assert, x11osd::bitmap, x11osd::cmap, x11osd::display, x11osd::gc, x11osd::mask_bitmap, x11osd::mask_gc, x11osd::mask_gc_back, x11osd::mode, x11osd::shaped, x11osd::u, x11osd::window, and X11OSD_SHAPED.

Referenced by directfb_dispose(), opengl_dispose_internal(), vidix_exit(), xshm_dispose(), xv_dispose(), xxmc_check_xoverlay_type(), and xxmc_dispose().

## ◆ x11osd_drawable_changed()

void x11osd_drawable_changed | ( | x11osd * | osd,
|  | Window | window
| ) |  |

References _x_assert, x11osd::bitmap, x11osd::clean, x11osd::cmap, x11osd::depth, x11osd::display, x11osd::height, lprintf, x11osd::mapped, x11osd::mask_bitmap, x11osd::mode, x11osd::screen, x11osd::shaped, x11osd::u, x11osd::visual, x11osd::width, x11osd::window, X11OSD_COLORKEY, and X11OSD_SHAPED.

Referenced by directfb_gui_data_exchange(), opengl_gui_data_exchange(), vidix_gui_data_exchange(), xshm_gui_data_exchange(), xv_gui_data_exchange(), and xxmc_gui_data_exchange().

## ◆ x11osd_expose()

void x11osd_expose | ( | x11osd * | osd | ) |

References _x_assert, x11osd::bitmap, x11osd::clean, x11osd::display, x11osd::gc, x11osd::height, lprintf, x11osd::mapped, x11osd::mask_bitmap, x11osd::mode, x11osd::shaped, x11osd::u, x11osd::width, x11osd::window, X11OSD_COLORKEY, and X11OSD_SHAPED.

Referenced by directfb_gui_data_exchange(), directfb_overlay_end(), opengl_gui_data_exchange(), opengl_overlay_end(), vidix_gui_data_exchange(), vidix_overlay_end(), x11osd_colorkey(), x11osd_create(), xshm_gui_data_exchange(), xshm_overlay_end(), xv_gui_data_exchange(), xv_overlay_end(), xxmc_gui_data_exchange(), and xxmc_overlay_end().

## ◆ x11osd_resize()

void x11osd_resize | ( | x11osd * | osd,
|  | int | width,
|  | int | height
| ) |  |

References _x_assert, x11osd::bitmap, x11osd::clean, x11osd::depth, x11osd::display, height, x11osd::height, lprintf, x11osd::mask_bitmap, x11osd::mode, x11osd::shaped, x11osd::u, width, x11osd::width, x11osd::window, x11osd_clear(), X11OSD_COLORKEY, and X11OSD_SHAPED.

Referenced by clean_output_area(), directfb_clean_output_area(), vidix_clean_output_area(), xv_clean_output_area(), and xxmc_clean_output_area().

## Variable Documentation

## ◆ x11_error

int x11_error = False
| static

Referenced by x11_error_handler(), and x11osd_create().