diff options
-rw-r--r-- | xine/vo_hook.c | 12 | ||||
-rw-r--r-- | xine/vo_hook.h | 17 | ||||
-rw-r--r-- | xine/vo_post.h | 7 |
3 files changed, 28 insertions, 8 deletions
diff --git a/xine/vo_hook.c b/xine/vo_hook.c index e8622d4a..ccc5aef3 100644 --- a/xine/vo_hook.c +++ b/xine/vo_hook.c @@ -4,7 +4,7 @@ * See the main source file 'xineliboutput.c' for copyright information and * how to reach the author. * - * $Id: vo_hook.c,v 1.1 2008-11-20 09:25:52 phintuka Exp $ + * $Id: vo_hook.c,v 1.2 2008-11-21 20:07:59 phintuka Exp $ * */ @@ -31,25 +31,25 @@ */ #define DEF_HANDLER3(RET, NAME, ARG1, ARG2, ARG3) \ -static RET vo_def_##NAME (vo_driver_t *self, ARG1 a1, ARG2 a2, ARG3 a3) { \ +RET vo_def_##NAME (vo_driver_t *self, ARG1 a1, ARG2 a2, ARG3 a3) { \ vo_driver_hook_t *this = (vo_driver_hook_t *) self; \ return this->orig_driver-> NAME (this->orig_driver, a1, a2, a3); \ } #define DEF_HANDLER2(RET, NAME, ARG1, ARG2) \ -static RET vo_def_##NAME (vo_driver_t *self, ARG1 a1, ARG2 a2) { \ +RET vo_def_##NAME (vo_driver_t *self, ARG1 a1, ARG2 a2) { \ vo_driver_hook_t *this = (vo_driver_hook_t *) self; \ return this->orig_driver-> NAME (this->orig_driver, a1, a2); \ } #define DEF_HANDLER1(RET, NAME, ARG1) \ -static RET vo_def_##NAME (vo_driver_t *self, ARG1 a1) { \ +RET vo_def_##NAME (vo_driver_t *self, ARG1 a1) { \ vo_driver_hook_t *this = (vo_driver_hook_t *) self; \ return this->orig_driver-> NAME (this->orig_driver, a1); \ } #define DEF_HANDLER0(RET, NAME) \ -static RET vo_def_##NAME (vo_driver_t *self) { \ +RET vo_def_##NAME (vo_driver_t *self) { \ vo_driver_hook_t *this = (vo_driver_hook_t *) self; \ return this->orig_driver-> NAME (this->orig_driver); \ } @@ -79,7 +79,7 @@ DEF_HANDLER3(void, get_property_min_max, int, int*, int*); DEF_HANDLER2(int, gui_data_exchange, int, void * ); DEF_HANDLER0(int, redraw_needed ); -static void vo_def_dispose(vo_driver_t *self) +void vo_def_dispose(vo_driver_t *self) { vo_driver_hook_t *this = (vo_driver_hook_t *) self; if (this->orig_driver) diff --git a/xine/vo_hook.h b/xine/vo_hook.h index 59b17c07..fa98a62c 100644 --- a/xine/vo_hook.h +++ b/xine/vo_hook.h @@ -4,7 +4,7 @@ * See the main source file 'xineliboutput.c' for copyright information and * how to reach the author. * - * $Id: vo_hook.h,v 1.1 2008-11-20 09:24:27 phintuka Exp $ + * $Id: vo_hook.h,v 1.2 2008-11-21 20:07:59 phintuka Exp $ * */ @@ -13,6 +13,12 @@ #include <xine/video_out.h> +/* + * synchronous video post plugins + * internal API + */ + + /* * vo_driver_hook_t * @@ -24,4 +30,13 @@ typedef struct driver_hook_s { vo_driver_t *orig_driver; } vo_driver_hook_t; +/* proxy handlers: forward call to original driver */ + +uint32_t vo_def_get_capabilities(vo_driver_t *self); +int vo_def_get_property(vo_driver_t *self, int prop); +int vo_def_set_property(vo_driver_t *self, int prop, int val); + +void vo_def_dispose(vo_driver_t *self); + + #endif /* _XINELIBOUTPUT_VO_HOOK_H */ diff --git a/xine/vo_post.h b/xine/vo_post.h index c14cf9f3..7fabf175 100644 --- a/xine/vo_post.h +++ b/xine/vo_post.h @@ -4,7 +4,7 @@ * See the main source file 'xineliboutput.c' for copyright information and * how to reach the author. * - * $Id: vo_post.h,v 1.1 2008-11-20 09:24:27 phintuka Exp $ + * $Id: vo_post.h,v 1.2 2008-11-21 20:07:59 phintuka Exp $ * */ @@ -13,6 +13,11 @@ #include <xine/video_out.h> +/* + * synchronous video post plugins + * public API + */ + /* Wire / unwire hook chain to video port */ int wire_video_driver(xine_video_port_t *video_port, vo_driver_t *hook); int unwire_video_driver(xine_video_port_t *video_port, vo_driver_t *hook, vo_driver_t *video_out); |