display.c File Reference

Include dependency graph for display.c:


Data Structures

struct  vout_display_owner_sys_t
struct  vout_display_sys_t
struct  video_splitter_owner_t

Defines

#define ALLOW_DUMMY_VOUT

Functions

static void SplitterClose (vout_display_t *vd)
static picture_tVideoBufferNew (filter_t *filter)
static void VideoBufferDelete (filter_t *filter, picture_t *picture)
static int FilterAllocationInit (filter_t *filter, void *vd)
static void FilterAllocationClean (filter_t *filter)
static vout_display_tvout_display_New (vlc_object_t *obj, const char *module, bool load_module, const video_format_t *fmt, const vout_display_cfg_t *cfg, vout_display_owner_t *owner)
 It creates a new vout_display_t using the given configuration.
static void vout_display_Delete (vout_display_t *vd)
 It deletes a vout_display_t.
static int vout_display_Control (vout_display_t *vd, int query,...)
 It controls a vout_display_t.
static void vout_display_Manage (vout_display_t *vd)
void vout_display_GetDefaultDisplaySize (unsigned *width, unsigned *height, const video_format_t *source, const vout_display_cfg_t *cfg)
 Computes the default display size given the source and the display configuration.
void vout_display_PlacePicture (vout_display_place_t *place, const video_format_t *source, const vout_display_cfg_t *cfg, bool do_clipping)
 Computes how to place a picture inside the display to respect the given parameters.
static void DummyVoutSendDisplayEventMouse (vout_thread_t *, vlc_mouse_t *fallback, const vlc_mouse_t *m)
static void VoutDisplayCreateRender (vout_display_t *vd)
static void VoutDisplayDestroyRender (vout_display_t *vd)
static void VoutDisplayResetRender (vout_display_t *vd)
static void VoutDisplayEventMouse (vout_display_t *vd, int event, va_list args)
static void VoutDisplayEvent (vout_display_t *vd, int event, va_list args)
static vout_window_tVoutDisplayNewWindow (vout_display_t *vd, const vout_window_cfg_t *cfg)
static void VoutDisplayDelWindow (vout_display_t *vd, vout_window_t *window)
static void VoutDisplayFitWindow (vout_display_t *vd, bool default_size)
static void VoutDisplayCropRatio (unsigned *x, unsigned *y, unsigned *width, unsigned *height, const video_format_t *source, unsigned num, unsigned den)
void vout_ManageDisplay (vout_display_t *vd, bool allow_reset_pictures)
bool vout_AreDisplayPicturesInvalid (vout_display_t *vd)
bool vout_IsDisplayFiltered (vout_display_t *vd)
picture_tvout_FilterDisplay (vout_display_t *vd, picture_t *picture)
void vout_SetDisplayFullscreen (vout_display_t *vd, bool is_fullscreen)
void vout_SetDisplayFilled (vout_display_t *vd, bool is_filled)
void vout_SetDisplayZoom (vout_display_t *vd, int num, int den)
void vout_SetWindowState (vout_display_t *vd, unsigned state)
void vout_SetDisplayAspect (vout_display_t *vd, unsigned sar_num, unsigned sar_den)
void vout_SetDisplayCrop (vout_display_t *vd, unsigned crop_num, unsigned crop_den, unsigned x, unsigned y, unsigned width, unsigned height)
vout_opengl_tvout_GetDisplayOpengl (vout_display_t *vd)
static vout_display_tDisplayNew (vout_thread_t *vout, const video_format_t *source_org, const vout_display_state_t *state, const char *module, bool is_wrapper, vout_display_t *wrapper, mtime_t double_click_timeout, mtime_t hide_timeout, const vout_display_owner_t *owner_ptr)
void vout_DeleteDisplay (vout_display_t *vd, vout_display_state_t *state)
 It destroy a vout managed display.
vout_display_tvout_NewDisplay (vout_thread_t *vout, const video_format_t *source, const vout_display_state_t *state, const char *module, mtime_t double_click_timeout, mtime_t hide_timeout)
 It creates a vout managed display.
static vout_window_tSplitterNewWindow (vout_display_t *vd, const vout_window_cfg_t *cfg_ptr)
static void SplitterDelWindow (vout_display_t *vd, vout_window_t *window)
static void SplitterEvent (vout_display_t *vd, int event, va_list args)
static picture_pool_tSplitterPool (vout_display_t *vd, unsigned count)
static void SplitterPrepare (vout_display_t *vd, picture_t *picture)
static void SplitterDisplay (vout_display_t *vd, picture_t *picture)
static int SplitterControl (vout_display_t *vd, int query, va_list args)
static void SplitterManage (vout_display_t *vd)
static int SplitterPictureNew (video_splitter_t *splitter, picture_t *picture[])
static void SplitterPictureDel (video_splitter_t *splitter, picture_t *picture[])
vout_display_tvout_NewSplitter (vout_thread_t *vout, const video_format_t *source, const vout_display_state_t *state, const char *module, const char *splitter_module, mtime_t double_click_timeout, mtime_t hide_timeout)
void vout_SendDisplayEventMouse (vout_thread_t *vout, const vlc_mouse_t *m)

Define Documentation

#define ALLOW_DUMMY_VOUT


Function Documentation

static vout_display_t* DisplayNew ( vout_thread_t vout,
const video_format_t source_org,
const vout_display_state_t state,
const char *  module,
bool  is_wrapper,
vout_display_t wrapper,
mtime_t  double_click_timeout,
mtime_t  hide_timeout,
const vout_display_owner_t owner_ptr 
) [static]

References vout_display_state_t::cfg, vout_display_owner_sys_t::cfg, cfg, vout_display_owner_sys_t::ch_crop, vout_display_owner_sys_t::ch_sar, vout_display_owner_sys_t::ch_wm_state, vout_display_owner_sys_t::crop, vout_display_owner_sys_t::crop_saved, vout_display_cfg_t::den, vout_display_state_t::den, vout_display_owner_sys_t::den, vout_display_cfg_t::display, vout_display_owner_sys_t::display_height, vout_display_owner_sys_t::display_width, vout_display_owner_sys_t::double_click_timeout, vout_display_owner_t::event, vout_display_owner_sys_t::fit_window, vout_display_owner_sys_t::height, vout_display_cfg_t::height, vout_display_owner_sys_t::height_saved, vout_display_owner_sys_t::hide_timeout, video_format_t::i_height, video_format_t::i_sar_den, video_format_t::i_sar_num, video_format_t::i_visible_height, video_format_t::i_visible_width, video_format_t::i_width, video_format_t::i_x_offset, video_format_t::i_y_offset, vout_display_cfg_t::is_display_filled, vout_display_owner_sys_t::is_display_filled, vout_display_cfg_t::is_fullscreen, vout_display_owner_sys_t::is_fullscreen, vout_display_owner_sys_t::is_wrapper, vout_display_owner_sys_t::last_moved, vout_display_owner_sys_t::lock, mdate(), vout_display_owner_sys_t::mouse, vout_display_cfg_t::num, vout_display_state_t::num, vout_display_owner_sys_t::num, vout_display_owner_sys_t::sar, vout_display_state_t::sar, vout_display_owner_sys_t::sar_initial, vout_display_owner_sys_t::source, vout_display_owner_sys_t::state, vout_display_owner_t::sys, vlc_mouse_Init(), vlc_mutex_init(), VLC_OBJECT, vout_display_owner_sys_t::vout, vout_display_GetDefaultDisplaySize(), vout_display_New(), vout_display_owner_sys_t::vout_mouse, VoutDisplayCreateRender(), VoutDisplayDelWindow(), VoutDisplayEvent(), VoutDisplayNewWindow(), vout_display_owner_sys_t::width, vout_display_cfg_t::width, vout_display_owner_sys_t::width_saved, vout_display_owner_t::window_del, vout_display_owner_t::window_new, vout_display_state_t::wm_state, vout_display_owner_sys_t::wm_state, vout_display_owner_sys_t::wm_state_initial, vout_display_owner_sys_t::wrapper, vout_display_owner_sys_t::x, vout_display_owner_sys_t::y, vout_display_cfg_t::zoom, and vout_display_owner_sys_t::zoom.

Referenced by vout_NewDisplay(), and vout_NewSplitter().

static void DummyVoutSendDisplayEventMouse ( vout_thread_t vout,
vlc_mouse_t fallback,
const vlc_mouse_t m 
) [static]

static void FilterAllocationClean ( filter_t filter  )  [static]

References filter_t::p_owner.

Referenced by VoutDisplayCreateRender().

static int FilterAllocationInit ( filter_t filter,
void *  vd 
) [static]

static void SplitterClose ( vout_display_t vd  )  [static]

static int SplitterControl ( vout_display_t vd,
int  query,
va_list  args 
) [static]

References VLC_EGENERIC.

Referenced by vout_NewSplitter().

static void SplitterDelWindow ( vout_display_t vd,
vout_window_t window 
) [static]

static void SplitterDisplay ( vout_display_t vd,
picture_t picture 
) [static]

static void SplitterEvent ( vout_display_t vd,
int  event,
va_list  args 
) [static]

static void SplitterManage ( vout_display_t vd  )  [static]

static vout_window_t* SplitterNewWindow ( vout_display_t vd,
const vout_window_cfg_t cfg_ptr 
) [static]

static void SplitterPictureDel ( video_splitter_t splitter,
picture_t picture[] 
) [static]

static int SplitterPictureNew ( video_splitter_t splitter,
picture_t picture[] 
) [static]

static picture_pool_t* SplitterPool ( vout_display_t vd,
unsigned  count 
) [static]

static void SplitterPrepare ( vout_display_t vd,
picture_t picture 
) [static]

static void VideoBufferDelete ( filter_t filter,
picture_t picture 
) [static]

References picture_Release(), and VLC_UNUSED.

static picture_t* VideoBufferNew ( filter_t filter  )  [static]

bool vout_AreDisplayPicturesInvalid ( vout_display_t vd  ) 

void vout_DeleteDisplay ( vout_display_t vd,
vout_display_state_t state 
)

static int vout_display_Control ( vout_display_t vd,
int  query,
  ... 
) [static]

static void vout_display_Delete ( vout_display_t vd  )  [static]

void vout_display_GetDefaultDisplaySize ( unsigned *  width,
unsigned *  height,
const video_format_t source,
const vout_display_cfg_t  
)

static void vout_display_Manage ( vout_display_t vd  )  [static]

References vout_display_t::manage.

Referenced by vout_ManageDisplay().

static vout_display_t* vout_display_New ( vlc_object_t obj,
const char *  module,
bool  load_module,
const video_format_t fmt,
const vout_display_cfg_t cfg,
vout_display_owner_t owner 
) [static]

void vout_display_PlacePicture ( vout_display_place_t place,
const video_format_t source,
const vout_display_cfg_t cfg,
bool  do_clipping 
)

picture_t* vout_FilterDisplay ( vout_display_t vd,
picture_t picture 
)

vout_opengl_t* vout_GetDisplayOpengl ( vout_display_t vd  ) 

References vout_display_Control(), and VOUT_DISPLAY_GET_OPENGL.

Referenced by Thread().

bool vout_IsDisplayFiltered ( vout_display_t vd  ) 

void vout_ManageDisplay ( vout_display_t vd,
bool  allow_reset_pictures 
)

References cfg, vout_display_owner_sys_t::cfg, vout_display_owner_sys_t::ch_activity, vout_display_owner_sys_t::ch_crop, vout_display_owner_sys_t::ch_display_filled, vout_display_owner_sys_t::ch_display_size, vout_display_owner_sys_t::ch_fullscreen, vout_display_owner_sys_t::ch_sar, vout_display_owner_sys_t::ch_wm_state, vout_display_owner_sys_t::ch_zoom, vout_display_owner_sys_t::crop, vout_display_owner_sys_t::crop_saved, vout_display_owner_sys_t::den, vout_display_cfg_t::den, vout_display_cfg_t::display, vout_display_owner_sys_t::display_height, vout_display_owner_sys_t::display_is_forced, vout_display_owner_sys_t::display_is_fullscreen, vout_display_owner_sys_t::display_width, vout_display_owner_sys_t::fit_window, vout_display_info_t::has_hide_mouse, vout_display_owner_sys_t::height, vout_display_cfg_t::height, vout_display_owner_sys_t::height_saved, vout_display_owner_sys_t::hide_timeout, video_format_t::i_height, video_format_t::i_sar_den, video_format_t::i_sar_num, video_format_t::i_visible_height, video_format_t::i_visible_width, video_format_t::i_width, video_format_t::i_x_offset, video_format_t::i_y_offset, vout_display_t::info, vout_display_owner_sys_t::is_display_filled, vout_display_cfg_t::is_display_filled, vout_display_cfg_t::is_fullscreen, vout_display_owner_sys_t::is_fullscreen, vout_display_owner_sys_t::is_hidden, vout_display_owner_sys_t::last_moved, vout_display_owner_sys_t::lock, mdate(), vout_display_owner_sys_t::mouse, msg_Dbg, msg_Err, vout_display_owner_sys_t::num, vout_display_cfg_t::num, vout_display_t::owner, vout_display_owner_sys_t::reset_pictures, vout_display_owner_sys_t::sar, vout_display_owner_sys_t::source, vout_display_t::source, vout_display_owner_t::sys, vlc_mutex_lock(), vlc_mutex_unlock(), vlc_ureduce(), vout_display_owner_sys_t::vout, VOUT_DISPLAY_CHANGE_DISPLAY_FILLED, VOUT_DISPLAY_CHANGE_DISPLAY_SIZE, VOUT_DISPLAY_CHANGE_FULLSCREEN, VOUT_DISPLAY_CHANGE_SOURCE_ASPECT, VOUT_DISPLAY_CHANGE_SOURCE_CROP, VOUT_DISPLAY_CHANGE_WINDOW_STATE, VOUT_DISPLAY_CHANGE_ZOOM, vout_display_Control(), VOUT_DISPLAY_HIDE_MOUSE, vout_display_Manage(), VOUT_DISPLAY_RESET_PICTURES, vout_SendEventDisplayFilled(), vout_SendEventFullscreen(), vout_SendEventMouseHidden(), vout_SendEventOnTop(), vout_SendEventSourceAspect(), vout_SendEventSourceCrop(), vout_SendEventZoom(), VoutDisplayCropRatio(), VoutDisplayFitWindow(), VoutDisplayResetRender(), vout_display_owner_sys_t::width, vout_display_cfg_t::width, vout_display_owner_sys_t::width_saved, vout_display_owner_sys_t::wm_state, vout_display_owner_sys_t::wm_state_initial, vout_display_owner_sys_t::x, vout_display_owner_sys_t::y, vout_display_owner_sys_t::zoom, and vout_display_cfg_t::zoom.

Referenced by SplitterManage(), Thread(), and vout_ManageWrapper().

vout_display_t* vout_NewDisplay ( vout_thread_t vout,
const video_format_t source,
const vout_display_state_t state,
const char *  module,
mtime_t  double_click_timeout,
mtime_t  hide_timeout 
)

It creates a vout managed display.

References DisplayNew().

Referenced by Thread(), and vout_OpenWrapper().

vout_display_t* vout_NewSplitter ( vout_thread_t vout,
const video_format_t source,
const vout_display_state_t state,
const char *  module,
const char *  splitter_module,
mtime_t  double_click_timeout,
mtime_t  hide_timeout 
)

void vout_SendDisplayEventMouse ( vout_thread_t vout,
const vlc_mouse_t m 
)

void vout_SetDisplayAspect ( vout_display_t vd,
unsigned  sar_num,
unsigned  sar_den 
)

void vout_SetDisplayCrop ( vout_display_t vd,
unsigned  crop_num,
unsigned  crop_den,
unsigned  x,
unsigned  y,
unsigned  width,
unsigned  height 
)

void vout_SetDisplayFilled ( vout_display_t vd,
bool  is_filled 
)

void vout_SetDisplayFullscreen ( vout_display_t vd,
bool  is_fullscreen 
)

void vout_SetDisplayZoom ( vout_display_t vd,
int  num,
int  den 
)

void vout_SetWindowState ( vout_display_t vd,
unsigned  state 
)

static void VoutDisplayCreateRender ( vout_display_t vd  )  [static]

static void VoutDisplayCropRatio ( unsigned *  x,
unsigned *  y,
unsigned *  width,
unsigned *  height,
const video_format_t source,
unsigned  num,
unsigned  den 
) [static]

static void VoutDisplayDelWindow ( vout_display_t vd,
vout_window_t window 
) [static]

static void VoutDisplayDestroyRender ( vout_display_t vd  )  [static]

static void VoutDisplayEvent ( vout_display_t vd,
int  event,
va_list  args 
) [static]

static void VoutDisplayEventMouse ( vout_display_t vd,
int  event,
va_list  args 
) [static]

static void VoutDisplayFitWindow ( vout_display_t vd,
bool  default_size 
) [static]

static vout_window_t* VoutDisplayNewWindow ( vout_display_t vd,
const vout_window_cfg_t cfg 
) [static]

static void VoutDisplayResetRender ( vout_display_t vd  )  [static]


Generated on Tue May 25 08:05:37 2010 for VLC by  doxygen 1.5.6