chromecast: pause the input when the CC is paused
[vlc.git] / modules / stream_out / chromecast / chromecast_common.h
blob4e47c86f7bd25887ec1fd93393a4e61088d1c74c
1 /*****************************************************************************
2 * chromecast_common.h: Chromecast common code between modules for vlc
3 *****************************************************************************
4 * Copyright © 2015-2016 VideoLAN
6 * Authors: Adrien Maglo <magsoft@videolan.org>
7 * Jean-Baptiste Kempf <jb@videolan.org>
8 * Steve Lhomme <robux4@videolabs.io>
10 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU Lesser General Public License as published by
12 * the Free Software Foundation; either version 2.1 of the License, or
13 * (at your option) any later version.
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Lesser General Public License for more details.
20 * You should have received a copy of the GNU Lesser General Public License
21 * along with this program; if not, write to the Free Software Foundation,
22 * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
23 *****************************************************************************/
25 #ifndef VLC_CHROMECAST_COMMON_H
26 #define VLC_CHROMECAST_COMMON_H
28 #include <vlc_input.h>
30 # ifdef __cplusplus
31 extern "C" {
32 # endif
34 #define CC_SHARED_VAR_NAME "cc_sout"
36 typedef void (*on_paused_changed_itf)( void *data, bool );
38 typedef struct
40 void *p_opaque;
42 void (*pf_set_on_paused_changed_cb)(void *, on_paused_changed_itf, void *);
44 void (*pf_set_length)(void*, mtime_t length);
45 mtime_t (*pf_get_time)(void*);
46 double (*pf_get_position)(void*);
47 void (*pf_set_initial_time)( void*, mtime_t time );
49 void (*pf_pace)(void*);
51 void (*pf_set_pause_state)(void*, bool paused);
53 void (*pf_set_meta)(void*, vlc_meta_t *p_meta);
55 } chromecast_common;
57 # ifdef __cplusplus
59 # endif
61 #endif // VLC_CHROMECAST_COMMON_H