libcdio  0.90
dvd.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2004, 2010 Rocky Bernstein <rocky@gnu.org>
3  Modeled after GNU/Linux definitions in linux/cdrom.h
4 
5  This program is free software: you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation, either version 3 of the License, or
8  (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18 
30 #ifndef CDIO_DVD_H_
31 #define CDIO_DVD_H_
32 
33 #include <cdio/types.h>
34 
38 typedef enum cdio_dvd_structure
39 {
46 
50 typedef enum cdio_dvd_book
51 {
64 
65 typedef struct cdio_dvd_layer {
66  unsigned int book_version : 4;
67  unsigned int book_type : 4;
68  unsigned int min_rate : 4;
69  unsigned int disc_size : 4;
70  unsigned int layer_type : 4;
71  unsigned int track_path : 1;
72  unsigned int nlayers : 2;
73  unsigned int track_density : 4;
74  unsigned int linear_density : 4;
75  unsigned int bca : 1;
76  uint32_t start_sector;
77  uint32_t end_sector;
78  uint32_t end_sector_l0;
80 
84 #define CDIO_DVD_MAX_LAYERS 4
85 
86 typedef struct cdio_dvd_physical {
87  uint8_t type;
88  uint8_t layer_num;
91 
92 typedef struct cdio_dvd_copyright {
93  uint8_t type;
94 
95  uint8_t layer_num;
96  uint8_t cpst;
97  uint8_t rmi;
99 
100 typedef struct cdio_dvd_disckey {
101  uint8_t type;
102 
103  unsigned agid : 2;
104  uint8_t value[2048];
106 
107 typedef struct cdio_dvd_bca {
108  uint8_t type;
109 
110  int len;
111  uint8_t value[188];
113 
114 typedef struct cdio_dvd_manufact {
115  uint8_t type;
116 
117  uint8_t layer_num;
118  int len;
119  uint8_t value[2048];
121 
122 typedef union {
123  uint8_t type;
124 
131 
132 #endif /* CDIO_DVD_H_ */

Generated for libcdio by doxygen 1.8.4