2 Copyright (C) 2011 Samsung Electronics
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Lesser General Public License for more details.
14 You should have received a copy of the GNU Lesser General Public
15 License along with this library; if not, write to the Free Software
16 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 #if (defined ENABLE_VIDEO && ENABLE_VIDEO)
21 #ifndef WebKitDOM_HTMLMediaElement_h
22 #define WebKitDOM_HTMLMediaElement_h
24 #include <WebKitDOM_Defines.h>
25 #include <WebKitDOM_HTMLElement.h>
32 #define WEBKITDOM_HTMLMEDIAELEMENT_INIT(objPtr) \
33 (((WebKitDOM_Object*)(objPtr))->p_coreObject) = 0; \
34 (((WebKitDOM_Object*)(objPtr))->deinit) = ewk_webkitdom_htmlmediaelement_deinit
36 struct _WebKitDOM_HTMLMediaElement {
37 WebKitDOM_HTMLElement parent_object;
40 #define WEBKITDOM_NETWORK_EMPTY 0
41 #define WEBKITDOM_NETWORK_IDLE 1
42 #define WEBKITDOM_NETWORK_LOADING 2
43 #define WEBKITDOM_NETWORK_NO_SOURCE 3
44 #define WEBKITDOM_HAVE_NOTHING 0
45 #define WEBKITDOM_HAVE_METADATA 1
46 #define WEBKITDOM_HAVE_CURRENT_DATA 2
47 #define WEBKITDOM_HAVE_FUTURE_DATA 3
48 #define WEBKITDOM_HAVE_ENOUGH_DATA 4
50 EAPI void ewk_webkitdom_htmlmediaelement_get_error(WebKitDOM_HTMLMediaElement* self, WebKitDOM_MediaError* ret);
52 EAPI void ewk_webkitdom_htmlmediaelement_get_src(WebKitDOM_HTMLMediaElement* self, WebKitDOM_String* ret);
53 EAPI void ewk_webkitdom_htmlmediaelement_set_src(WebKitDOM_HTMLMediaElement* self, WebKitDOM_String*);
55 EAPI void ewk_webkitdom_htmlmediaelement_get_current_src(WebKitDOM_HTMLMediaElement* self, WebKitDOM_String* ret);
57 EAPI unsigned short ewk_webkitdom_htmlmediaelement_get_network_state(WebKitDOM_HTMLMediaElement* self);
59 EAPI void ewk_webkitdom_htmlmediaelement_get_preload(WebKitDOM_HTMLMediaElement* self, WebKitDOM_String* ret);
60 EAPI void ewk_webkitdom_htmlmediaelement_set_preload(WebKitDOM_HTMLMediaElement* self, WebKitDOM_String*);
62 EAPI void ewk_webkitdom_htmlmediaelement_get_buffered(WebKitDOM_HTMLMediaElement* self, WebKitDOM_TimeRanges* ret);
64 EAPI unsigned short ewk_webkitdom_htmlmediaelement_get_ready_state(WebKitDOM_HTMLMediaElement* self);
66 EAPI Eina_Bool ewk_webkitdom_htmlmediaelement_get_seeking(WebKitDOM_HTMLMediaElement* self);
68 EAPI float ewk_webkitdom_htmlmediaelement_get_current_time(WebKitDOM_HTMLMediaElement* self);
69 EAPI void ewk_webkitdom_htmlmediaelement_set_current_time(WebKitDOM_HTMLMediaElement* self, float);
71 EAPI double ewk_webkitdom_htmlmediaelement_get_initial_time(WebKitDOM_HTMLMediaElement* self);
73 EAPI float ewk_webkitdom_htmlmediaelement_get_start_time(WebKitDOM_HTMLMediaElement* self);
75 EAPI float ewk_webkitdom_htmlmediaelement_get_duration(WebKitDOM_HTMLMediaElement* self);
77 EAPI Eina_Bool ewk_webkitdom_htmlmediaelement_get_paused(WebKitDOM_HTMLMediaElement* self);
79 EAPI float ewk_webkitdom_htmlmediaelement_get_default_playback_rate(WebKitDOM_HTMLMediaElement* self);
80 EAPI void ewk_webkitdom_htmlmediaelement_set_default_playback_rate(WebKitDOM_HTMLMediaElement* self, float);
82 EAPI float ewk_webkitdom_htmlmediaelement_get_playback_rate(WebKitDOM_HTMLMediaElement* self);
83 EAPI void ewk_webkitdom_htmlmediaelement_set_playback_rate(WebKitDOM_HTMLMediaElement* self, float);
85 EAPI void ewk_webkitdom_htmlmediaelement_get_played(WebKitDOM_HTMLMediaElement* self, WebKitDOM_TimeRanges* ret);
87 EAPI void ewk_webkitdom_htmlmediaelement_get_seekable(WebKitDOM_HTMLMediaElement* self, WebKitDOM_TimeRanges* ret);
89 EAPI Eina_Bool ewk_webkitdom_htmlmediaelement_get_ended(WebKitDOM_HTMLMediaElement* self);
91 EAPI Eina_Bool ewk_webkitdom_htmlmediaelement_get_autoplay(WebKitDOM_HTMLMediaElement* self);
92 EAPI void ewk_webkitdom_htmlmediaelement_set_autoplay(WebKitDOM_HTMLMediaElement* self, Eina_Bool);
94 EAPI Eina_Bool ewk_webkitdom_htmlmediaelement_get_loop(WebKitDOM_HTMLMediaElement* self);
95 EAPI void ewk_webkitdom_htmlmediaelement_set_loop(WebKitDOM_HTMLMediaElement* self, Eina_Bool);
97 EAPI Eina_Bool ewk_webkitdom_htmlmediaelement_get_controls(WebKitDOM_HTMLMediaElement* self);
98 EAPI void ewk_webkitdom_htmlmediaelement_set_controls(WebKitDOM_HTMLMediaElement* self, Eina_Bool);
100 EAPI float ewk_webkitdom_htmlmediaelement_get_volume(WebKitDOM_HTMLMediaElement* self);
101 EAPI void ewk_webkitdom_htmlmediaelement_set_volume(WebKitDOM_HTMLMediaElement* self, float);
103 EAPI Eina_Bool ewk_webkitdom_htmlmediaelement_get_muted(WebKitDOM_HTMLMediaElement* self);
104 EAPI void ewk_webkitdom_htmlmediaelement_set_muted(WebKitDOM_HTMLMediaElement* self, Eina_Bool);
106 EAPI Eina_Bool ewk_webkitdom_htmlmediaelement_get_default_muted(WebKitDOM_HTMLMediaElement* self);
107 EAPI void ewk_webkitdom_htmlmediaelement_set_default_muted(WebKitDOM_HTMLMediaElement* self, Eina_Bool);
109 EAPI Eina_Bool ewk_webkitdom_htmlmediaelement_get_webkit_preserves_pitch(WebKitDOM_HTMLMediaElement* self);
110 EAPI void ewk_webkitdom_htmlmediaelement_set_webkit_preserves_pitch(WebKitDOM_HTMLMediaElement* self, Eina_Bool);
112 EAPI Eina_Bool ewk_webkitdom_htmlmediaelement_get_webkit_has_closed_captions(WebKitDOM_HTMLMediaElement* self);
114 EAPI Eina_Bool ewk_webkitdom_htmlmediaelement_get_webkit_closed_captions_visible(WebKitDOM_HTMLMediaElement* self);
115 EAPI void ewk_webkitdom_htmlmediaelement_set_webkit_closed_captions_visible(WebKitDOM_HTMLMediaElement* self, Eina_Bool);
117 /* #if (defined ENABLE_MEDIA_STATISTICS && ENABLE_MEDIA_STATISTICS)
118 EAPI unsigned ewk_webkitdom_htmlmediaelement_get_webkit_audio_decoded_byte_count(WebKitDOM_HTMLMediaElement* self);
121 /* #if (defined ENABLE_MEDIA_STATISTICS && ENABLE_MEDIA_STATISTICS)
122 EAPI unsigned ewk_webkitdom_htmlmediaelement_get_webkit_video_decoded_byte_count(WebKitDOM_HTMLMediaElement* self);
125 EAPI void ewk_webkitdom_htmlmediaelement_get_media_group(WebKitDOM_HTMLMediaElement* self, WebKitDOM_String* ret);
126 EAPI void ewk_webkitdom_htmlmediaelement_set_media_group(WebKitDOM_HTMLMediaElement* self, WebKitDOM_String*);
128 EAPI void ewk_webkitdom_htmlmediaelement_get_controller(WebKitDOM_HTMLMediaElement* self, WebKitDOM_MediaController* ret);
129 EAPI void ewk_webkitdom_htmlmediaelement_set_controller(WebKitDOM_HTMLMediaElement* self, WebKitDOM_MediaController*);
132 EAPI void ewk_webkitdom_htmlmediaelement_load(WebKitDOM_HTMLMediaElement* self);
133 EAPI void ewk_webkitdom_htmlmediaelement_can_play_type(WebKitDOM_HTMLMediaElement* self, WebKitDOM_String* type, WebKitDOM_String* ret);
134 EAPI void ewk_webkitdom_htmlmediaelement_play(WebKitDOM_HTMLMediaElement* self);
135 EAPI void ewk_webkitdom_htmlmediaelement_pause(WebKitDOM_HTMLMediaElement* self);
137 EAPI void ewk_webkitdom_htmlmediaelement_deinit(const WebKitDOM_Object*);
138 EAPI void _copy_webkit_htmlmediaelement(WebKitDOM_HTMLMediaElement* kitObjSrc, WebKitDOM_HTMLMediaElement* ret);
146 #endif // (defined ENABLE_VIDEO && ENABLE_VIDEO)