]> git.sesse.net Git - vlc/blob - plugins/macosx/macosx_common.h
Interface changes to include menu for Title and chapter navigation.
[vlc] / plugins / macosx / macosx_common.h
1 /*****************************************************************************
2  * macosx.c : MacOS X plugin for vlc
3  *****************************************************************************
4  * Copyright (C) 2001 VideoLAN
5  * $Id: macosx_common.h,v 1.3 2001/10/08 16:20:25 massiot Exp $
6  *
7  * Authors: Colin Delacroix <colin@zoy.org>
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2 of the License, or
12  * (at your option) any later version.
13  * 
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program; if not, write to the Free Software
21  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
22  *****************************************************************************/
23
24 /*****************************************************************************
25  * Constants & more
26  *****************************************************************************/
27
28 #ifndef __CARBONPREFIX__
29     #define __CARBONPREFIX__
30
31     // Needed for carbonization
32     #define TARGET_API_MAC_CARBON 1
33
34     // For the pascal to C or C to pascal string conversions in carbon
35     #define OLDP2C 1
36 #endif
37
38 #include <Carbon/Carbon.h>
39
40
41 #define PLAYING         0
42 #define PAUSED          1
43 #define STOPPED         2
44
45
46 /*****************************************************************************
47  * Type declarations that unfortunately need to be known to both
48  * ...
49  * Kind of a hack due to the fact that on Mac OS, there is little difference 
50  * between the interface and the video output, and hence little separation
51  * between those elements.
52  *****************************************************************************/
53
54 /*****************************************************************************
55  * vout_sys_t: MacOS X video output method descriptor
56  *****************************************************************************
57  * This structure is part of the video output thread descriptor.
58  * It describes the MacOS X specific properties of an output thread.
59  *****************************************************************************/
60 typedef struct vout_sys_s
61 {
62     Rect        wrect;
63     WindowRef   p_window;
64     short gwLocOffscreen;
65     GWorldPtr p_gw[ 2 ];
66     Boolean gNewNewGWorld;      /* can we allocate in VRAm or AGP memory ? */
67     
68     GDHandle  theGDList;
69     Ptr                         theBase;
70     int                         theRow;
71     int                         theDepth;
72 } vout_sys_t;