vlc_vout_display.h File Reference

This file defines vout display structures and functions in vlc. More...

Include dependency graph for vlc_vout_display.h:

Go to the source code of this file.

Data Structures

struct  vout_display_cfg_t
 Initial/Current configuration for a vout_display_t. More...
struct  vout_display_info_t
 Informations from a vout_display_t to configure the core behaviour. More...
struct  vout_display_owner_t
 Vout owner structures. More...
struct  vout_display_t
struct  vout_display_place_t
 Structure used to store the result of a vout_display_PlacePicture. More...

Defines

#define VLC_VOUT_DISPLAY_H   1

Typedefs

typedef struct vout_display_t vout_display_t
typedef struct vout_display_sys_t vout_display_sys_t
typedef struct vout_display_owner_t vout_display_owner_t
typedef struct
vout_display_owner_sys_t 
vout_display_owner_sys_t

Enumerations

enum  vout_display_align_t {
  VOUT_DISPLAY_ALIGN_CENTER, VOUT_DISPLAY_ALIGN_LEFT, VOUT_DISPLAY_ALIGN_RIGHT, VOUT_DISPLAY_ALIGN_TOP,
  VOUT_DISPLAY_ALIGN_BOTTOM
}
 Possible alignments for vout_display. More...
enum  {
  VOUT_DISPLAY_HIDE_MOUSE, VOUT_DISPLAY_RESET_PICTURES, VOUT_DISPLAY_CHANGE_FULLSCREEN, VOUT_DISPLAY_CHANGE_ON_TOP,
  VOUT_DISPLAY_CHANGE_DISPLAY_SIZE, VOUT_DISPLAY_CHANGE_DISPLAY_FILLED, VOUT_DISPLAY_CHANGE_ZOOM, VOUT_DISPLAY_CHANGE_SOURCE_ASPECT,
  VOUT_DISPLAY_CHANGE_SOURCE_CROP
}
 Control query for vout_display_t. More...
enum  {
  VOUT_DISPLAY_EVENT_PICTURES_INVALID, VOUT_DISPLAY_EVENT_FULLSCREEN, VOUT_DISPLAY_EVENT_ON_TOP, VOUT_DISPLAY_EVENT_DISPLAY_SIZE,
  VOUT_DISPLAY_EVENT_CLOSE, VOUT_DISPLAY_EVENT_KEY, VOUT_DISPLAY_EVENT_MOUSE_STATE, VOUT_DISPLAY_EVENT_MOUSE_MOVED,
  VOUT_DISPLAY_EVENT_MOUSE_PRESSED, VOUT_DISPLAY_EVENT_MOUSE_RELEASED, VOUT_DISPLAY_EVENT_MOUSE_DOUBLE_CLICK
}
 Event from vout_display_t. More...

Functions

static void vout_display_SendEvent (vout_display_t *vd, int query,...)
static void vout_display_SendEventDisplaySize (vout_display_t *vd, int width, int height, bool is_fullscreen)
static void vout_display_SendEventPicturesInvalid (vout_display_t *vd)
static void vout_display_SendEventClose (vout_display_t *vd)
static void vout_display_SendEventKey (vout_display_t *vd, int key)
static void vout_display_SendEventFullscreen (vout_display_t *vd, bool is_fullscreen)
static void vout_display_SendEventOnTop (vout_display_t *vd, bool is_on_top)
static void vout_display_SendEventMouseState (vout_display_t *vd, int x, int y, int button_mask)
static void vout_display_SendEventMouseMoved (vout_display_t *vd, int x, int y)
static void vout_display_SendEventMousePressed (vout_display_t *vd, int button)
static void vout_display_SendEventMouseReleased (vout_display_t *vd, int button)
static void vout_display_SendEventMouseDoubleClick (vout_display_t *vd)
static vout_window_tvout_display_NewWindow (vout_display_t *vd, const vout_window_cfg_t *cfg)
 Asks for a new window with the given configuration as hint.
static void vout_display_DeleteWindow (vout_display_t *vd, vout_window_t *window)
void vout_display_GetDefaultDisplaySize (unsigned *width, unsigned *height, const video_format_t *source, const vout_display_cfg_t *)
 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.


Detailed Description

This file defines vout display structures and functions in vlc.


Define Documentation

#define VLC_VOUT_DISPLAY_H   1


Typedef Documentation


Enumeration Type Documentation

anonymous enum

Control query for vout_display_t.

Enumerator:
VOUT_DISPLAY_HIDE_MOUSE 
VOUT_DISPLAY_RESET_PICTURES 
VOUT_DISPLAY_CHANGE_FULLSCREEN 
VOUT_DISPLAY_CHANGE_ON_TOP 
VOUT_DISPLAY_CHANGE_DISPLAY_SIZE 
VOUT_DISPLAY_CHANGE_DISPLAY_FILLED 
VOUT_DISPLAY_CHANGE_ZOOM 
VOUT_DISPLAY_CHANGE_SOURCE_ASPECT 
VOUT_DISPLAY_CHANGE_SOURCE_CROP 

anonymous enum

Event from vout_display_t.

Events modifiying the state may be sent multiple times. Only the transition will be retained and acted upon.

Enumerator:
VOUT_DISPLAY_EVENT_PICTURES_INVALID 
VOUT_DISPLAY_EVENT_FULLSCREEN 
VOUT_DISPLAY_EVENT_ON_TOP 
VOUT_DISPLAY_EVENT_DISPLAY_SIZE 
VOUT_DISPLAY_EVENT_CLOSE 
VOUT_DISPLAY_EVENT_KEY 
VOUT_DISPLAY_EVENT_MOUSE_STATE 
VOUT_DISPLAY_EVENT_MOUSE_MOVED 
VOUT_DISPLAY_EVENT_MOUSE_PRESSED 
VOUT_DISPLAY_EVENT_MOUSE_RELEASED 
VOUT_DISPLAY_EVENT_MOUSE_DOUBLE_CLICK 

Possible alignments for vout_display.

Enumerator:
VOUT_DISPLAY_ALIGN_CENTER 
VOUT_DISPLAY_ALIGN_LEFT 
VOUT_DISPLAY_ALIGN_RIGHT 
VOUT_DISPLAY_ALIGN_TOP 
VOUT_DISPLAY_ALIGN_BOTTOM 


Function Documentation

static void vout_display_DeleteWindow ( vout_display_t vd,
vout_window_t window 
) [inline, static]

Referenced by DirectXCloseWindow(), and GetWindow().

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

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

Asks for a new window with the given configuration as hint.

b_standalone/i_x/i_y may be overwritten by the core

Referenced by DirectXCreateWindow(), and GetWindow().

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.

This assumes that cropping is done by an external mean.

Parameters:
p_place Place inside the window (window pixel unit)
p_source Video source format
p_cfg Display configuration
b_clip If true, prevent the video to go outside the display (break zoom).

References __MIN, vout_display_cfg_t::align, vout_display_cfg_t::display, vout_display_place_t::height, vout_display_cfg_t::height, vout_display_cfg_t::horizontal, video_format_t::i_sar_den, video_format_t::i_sar_num, video_format_t::i_visible_height, video_format_t::i_visible_width, vout_display_cfg_t::is_display_filled, vout_display_cfg_t::sar, vout_display_cfg_t::vertical, VOUT_DISPLAY_ALIGN_BOTTOM, VOUT_DISPLAY_ALIGN_LEFT, VOUT_DISPLAY_ALIGN_RIGHT, VOUT_DISPLAY_ALIGN_TOP, vout_display_GetDefaultDisplaySize(), vout_display_place_t::width, vout_display_cfg_t::width, vout_display_place_t::x, and vout_display_place_t::y.

Referenced by Control(), EventThreadCreate(), Get(), Place(), and UpdateRects().

static void vout_display_SendEvent ( vout_display_t vd,
int  query,
  ... 
) [inline, static]

static void vout_display_SendEventClose ( vout_display_t vd  )  [inline, static]

static void vout_display_SendEventDisplaySize ( vout_display_t vd,
int  width,
int  height,
bool  is_fullscreen 
) [inline, static]

static void vout_display_SendEventFullscreen ( vout_display_t vd,
bool  is_fullscreen 
) [inline, static]

static void vout_display_SendEventKey ( vout_display_t vd,
int  key 
) [inline, static]

Referenced by EventThread(), and Manage().

static void vout_display_SendEventMouseDoubleClick ( vout_display_t vd  )  [inline, static]

Referenced by EventThread().

static void vout_display_SendEventMouseMoved ( vout_display_t vd,
int  x,
int  y 
) [inline, static]

Referenced by EventThread(), and Manage().

static void vout_display_SendEventMousePressed ( vout_display_t vd,
int  button 
) [inline, static]

static void vout_display_SendEventMouseReleased ( vout_display_t vd,
int  button 
) [inline, static]

static void vout_display_SendEventMouseState ( vout_display_t vd,
int  x,
int  y,
int  button_mask 
) [inline, static]

Referenced by Manage().

static void vout_display_SendEventOnTop ( vout_display_t vd,
bool  is_on_top 
) [inline, static]

static void vout_display_SendEventPicturesInvalid ( vout_display_t vd  )  [inline, static]


Generated on Sun Nov 22 08:05:27 2009 for VLC by  doxygen 1.5.6