annotate libdvdcss/dvdcss/dvdcss.h @ 22697:2fe9bd97a7f6

Fix configure -march detection for athlon-xp The configure script uses SSE support to distinguish between athlon and athlon-xp, but SSE support was tested _after_ deciding the basic CPU type. Thus athlon-xp was always misdetected as athlon. Fix this by moving the CPU extensions check before the CPU type check. Patch from Andrew Savchenko, bircoph list ru.
author uau
date Sun, 18 Mar 2007 13:38:55 +0000
parents e68f255d7d64
children b015cbd37591
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
20613
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
1 /**
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
2 * \file dvdcss.h
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
3 * \author Stéphane Borel <stef@via.ecp.fr>
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
4 * \author Samuel Hocevar <sam@zoy.org>
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
5 * \brief The \e libdvdcss public header.
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
6 *
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
7 * This header contains the public types and functions that applications
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
8 * using \e libdvdcss may use.
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
9 */
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
10
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
11 /*
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
12 * Copyright (C) 1998-2002 VideoLAN
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
13 * $Id$
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
14 *
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
15 * This program is free software; you can redistribute it and/or modify
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
16 * it under the terms of the GNU General Public License as published by
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
17 * the Free Software Foundation; either version 2 of the License, or
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
18 * (at your option) any later version.
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
19 *
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
20 * This program is distributed in the hope that it will be useful,
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
21 * but WITHOUT ANY WARRANTY; without even the implied warranty of
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
23 * GNU General Public License for more details.
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
24 *
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
25 * You should have received a copy of the GNU General Public License
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
26 * along with this program; if not, write to the Free Software
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
27 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
28 */
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
29
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
30 #ifndef _DVDCSS_DVDCSS_H
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
31 #ifndef _DOXYGEN_SKIP_ME
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
32 #define _DVDCSS_DVDCSS_H 1
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
33 #endif
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
34
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
35 #ifdef __cplusplus
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
36 extern "C" {
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
37 #endif
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
38
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
39 /** Library instance handle, to be used for each library call. */
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
40 typedef struct dvdcss_s* dvdcss_t;
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
41
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
42
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
43 /** The block size of a DVD. */
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
44 #define DVDCSS_BLOCK_SIZE 2048
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
45
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
46 /** The default flag to be used by \e libdvdcss functions. */
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
47 #define DVDCSS_NOFLAGS 0
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
48
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
49 /** Flag to ask dvdcss_read() to decrypt the data it reads. */
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
50 #define DVDCSS_READ_DECRYPT (1 << 0)
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
51
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
52 /** Flag to tell dvdcss_seek() it is seeking in MPEG data. */
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
53 #define DVDCSS_SEEK_MPEG (1 << 0)
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
54
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
55 /** Flag to ask dvdcss_seek() to check the current title key. */
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
56 #define DVDCSS_SEEK_KEY (1 << 1)
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
57
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
58
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
59 #if defined(LIBDVDCSS_EXPORTS)
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
60 #define LIBDVDCSS_EXPORT __declspec(dllexport) extern
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
61 #elif defined(LIBDVDCSS_IMPORTS)
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
62 #define LIBDVDCSS_EXPORT __declspec(dllimport) extern
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
63 #else
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
64 #define LIBDVDCSS_EXPORT extern
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
65 #endif
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
66
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
67 /*
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
68 * Our version number. The variable name contains the interface version.
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
69 */
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
70 LIBDVDCSS_EXPORT char * dvdcss_interface_2;
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
71
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
72
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
73 /*
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
74 * Exported prototypes.
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
75 */
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
76 LIBDVDCSS_EXPORT dvdcss_t dvdcss_open ( char *psz_target );
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
77 LIBDVDCSS_EXPORT int dvdcss_close ( dvdcss_t );
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
78 LIBDVDCSS_EXPORT int dvdcss_seek ( dvdcss_t,
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
79 int i_blocks,
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
80 int i_flags );
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
81 LIBDVDCSS_EXPORT int dvdcss_read ( dvdcss_t,
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
82 void *p_buffer,
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
83 int i_blocks,
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
84 int i_flags );
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
85 LIBDVDCSS_EXPORT int dvdcss_readv ( dvdcss_t,
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
86 void *p_iovec,
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
87 int i_blocks,
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
88 int i_flags );
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
89 LIBDVDCSS_EXPORT char * dvdcss_error ( dvdcss_t );
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
90
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
91
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
92 /*
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
93 * Deprecated stuff.
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
94 */
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
95 #ifndef _DOXYGEN_SKIP_ME
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
96 #define dvdcss_title(a,b) dvdcss_seek(a,b,DVDCSS_SEEK_KEY)
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
97 #define dvdcss_handle dvdcss_t
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
98 #endif
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
99
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
100
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
101 #ifdef __cplusplus
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
102 }
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
103 #endif
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
104
e68f255d7d64 Move libdvdcss into its own subdirectory.
diego
parents:
diff changeset
105 #endif /* <dvdcss/dvdcss.h> */