libcdio  0.83
xa.h
Go to the documentation of this file.
1 /*
2  $Id: xa.h,v 1.19 2008/03/25 15:59:10 karl Exp $
3 
4  Copyright (C) 2003, 2004, 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org>
5  Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org>
6 
7  See also iso9660.h by Eric Youngdale (1993) and in cdrtools. These are
8 
9  Copyright 1993 Yggdrasil Computing, Incorporated
10  Copyright (c) 1999,2000 J. Schilling
11 
12  This program is free software: you can redistribute it and/or modify
13  it under the terms of the GNU General Public License as published by
14  the Free Software Foundation, either version 3 of the License, or
15  (at your option) any later version.
16 
17  This program is distributed in the hope that it will be useful,
18  but WITHOUT ANY WARRANTY; without even the implied warranty of
19  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20  GNU General Public License for more details.
21 
22  You should have received a copy of the GNU General Public License
23  along with this program. If not, see <http://www.gnu.org/licenses/>.
24 */
33 
34 #ifndef __CDIO_XA_H__
35 #define __CDIO_XA_H__
36 
37 #ifdef __cplusplus
38 extern "C" {
39 #endif /* __cplusplus */
40 
46  typedef enum {
48  XA_PERM_RSYS = 0x0001,
49  XA_PERM_XSYS = 0x0004,
51  XA_PERM_RUSR = 0x0010,
52  XA_PERM_XUSR = 0x0040,
54  XA_PERM_RGRP = 0x0100,
55  XA_PERM_XGRP = 0x0400,
57  XA_PERM_ROTH = 0x1000,
58  XA_PERM_XOTH = 0x4000,
60  XA_ATTR_MODE2FORM1 = (1 << 11),
61  XA_ATTR_MODE2FORM2 = (1 << 12),
62  XA_ATTR_INTERLEAVED = (1 << 13),
63  XA_ATTR_CDDA = (1 << 14),
64  XA_ATTR_DIRECTORY = (1 << 15),
65 
69 
74 
75 extern const char ISO_XA_MARKER_STRING[sizeof("CD-XA001")-1];
76 
77 #define ISO_XA_MARKER_STRING "CD-XA001"
78 
101 typedef struct iso9660_xa_s
102 {
103  uint16_t group_id;
104  uint16_t user_id;
105  uint16_t attributes;
106  char signature[2];
107  uint8_t filenum;
108  uint8_t reserved[5];
110 
111 
116 
145 const char *
146 iso9660_get_xa_attr_str (uint16_t xa_attr);
147 
154 iso9660_xa_t *
155 iso9660_xa_init (iso9660_xa_t *_xa, uint16_t uid, uint16_t gid, uint16_t attr,
156  uint8_t filenum);
157 
158 #ifdef __cplusplus
159 }
160 
166 extern xa_misc_enum_t debugger_xa_misc_enum;
167 
168 
169 #endif /* __cplusplus */
170 
171 #endif /* __CDIO_XA_H__ */
172 
173 /*
174  * Local variables:
175  * c-file-style: "gnu"
176  * tab-width: 8
177  * indent-tabs-mode: nil
178  * End:
179  */

Generated for libcdio by doxygen 1.8.1.1