VLC  4.0.0-dev
control.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * control.h : vout internal control
3  *****************************************************************************
4  * Copyright (C) 2009-2010 Laurent Aimar
5  *
6  * Authors: Laurent Aimar <fenrir _AT_ videolan _DOT_ org>
7  *
8  * This program is free software; you can redistribute it and/or modify it
9  * under the terms of the GNU Lesser General Public License as published by
10  * the Free Software Foundation; either version 2.1 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public License
19  * along with this program; if not, write to the Free Software Foundation,
20  * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
21  *****************************************************************************/
22 
23 #ifndef LIBVLC_VOUT_INTERNAL_CONTROL_H
24 #define LIBVLC_VOUT_INTERNAL_CONTROL_H
25 
26 #include <vlc_viewpoint.h>
27 
28 /* */
29 typedef struct {
31  vlc_cond_t wait_request;
32  vlc_cond_t wait_available;
33 
34  /* */
35  bool forced_awake;
36  bool is_waiting;
37  bool is_held;
40 
41 /* */
44 
45 /* controls outside of the vout thread */
50 
51 /* control inside of the vout thread */
53 
54 #endif
vlc_mouse_t
Mouse state.
Definition: vlc_mouse.h:45
vout_control_Clean
void vout_control_Clean(vout_control_t *)
Definition: control.c:45
vout_control_Wake
void vout_control_Wake(vout_control_t *)
Definition: control.c:59
vlc_mutex_t
Mutex.
Definition: vlc_threads.h:225
vout_control_Init
void vout_control_Init(vout_control_t *)
Definition: control.c:33
vout_control_t
Definition: control.h:29
vlc_tick_t
int64_t vlc_tick_t
High precision date or time interval.
Definition: vlc_tick.h:45
lock
vlc_mutex_t lock
Definition: rand.c:50
DECL_ARRAY
#define DECL_ARRAY(type)
Definition: vlc_arrays.h:181
vlc_cond_t
Condition variable.
Definition: vlc_threads.h:349
vout_control_Release
void vout_control_Release(vout_control_t *)
Definition: control.c:76
vout_control_Pop
int vout_control_Pop(vout_control_t *, vlc_mouse_t *, vlc_tick_t deadline)
Definition: control.c:85
vlc_viewpoint.h
vout_control_Hold
void vout_control_Hold(vout_control_t *)
Definition: control.c:67
vout_control_PushMouse
void vout_control_PushMouse(vout_control_t *, const vlc_mouse_t *)
Definition: control.c:51