dvd_input.h
1 /*
2  * Copyright (C) 2001, 2002 Samuel Hocevar <sam@zoy.org>,
3  * HÃ¥kan Hjort <d95hjort@dtek.chalmers.se>
4  *
5  * This file is part of libdvdread.
6  *
7  * libdvdread is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * libdvdread is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License along
18  * with libdvdread; if not, write to the Free Software Foundation, Inc.,
19  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20  */
21 
22 #ifndef LIBDVDREAD_DVD_INPUT_H
23 #define LIBDVDREAD_DVD_INPUT_H
24 
28 #define DVDINPUT_NOFLAGS 0
29 
30 #define DVDINPUT_READ_DECRYPT (1 << 0)
31 
32 typedef struct dvd_input_s *dvd_input_t;
33 
34 #if defined( __MINGW32__ )
35 # undef lseek
36 # define lseek _lseeki64
37 # undef off_t
38 # define off_t off64_t
39 # undef stat
40 # define stat _stati64
41 # define fstat _fstati64
42 # define wstat _wstati64
43 #endif
44 
45 #ifdef __ANDROID__
46 # undef lseek
47 # define lseek lseek64
48 # undef off_t
49 # define off_t off64_t
50 #endif
51 
56 extern dvd_input_t (*dvdinput_open) (const char *);
57 extern int (*dvdinput_close) (dvd_input_t);
58 extern int (*dvdinput_seek) (dvd_input_t, int);
59 extern int (*dvdinput_title) (dvd_input_t, int);
60 extern int (*dvdinput_read) (dvd_input_t, void *, int, int);
61 extern char * (*dvdinput_error) (dvd_input_t);
62 
66 int dvdinput_setup(void);
67 
68 #endif /* LIBDVDREAD_DVD_INPUT_H */
Definition: dvd_input.c:70