~ubuntu-branches/debian/wheezy/brasero/wheezy

« back to all changes in this revision

Viewing changes to src/scsi-read-toc-pma-atip.h

  • Committer: Bazaar Package Importer
  • Author(s): Josselin Mouette, Pedro Fragoso, Luca Bruno, Josselin Mouette, Emilio Pozuelo Monfort
  • Date: 2009-06-24 18:59:46 UTC
  • mfrom: (1.2.13 upstream)
  • Revision ID: james.westby@ubuntu.com-20090624185946-iyxkgf3gjptir5y3
Tags: 2.26.2-1
[ Pedro Fragoso ]
* Add myself to Maintainer field
  - Thanks Ondřej Surý
* New upstream version (Closes: #528945)
  - Split package into brasero, libbrasero-media0 and libbrasero-dev
  - Add Replaces to libbrasero-media0
  - Bump libgtk to 2.14.0
  - Remove libnotify Build-dep
  - Add Build-dep libnautilus-extension-dev (>= 2.22.2)
    and install it.
  - Add Build-dep to libsm-dev
  - Add Build-dep on intltool
* Install omf files to prevent crash on Help
* Move gstreamer0.10-plugins-bad to Suggests, and add
  dvdauthor and vcdimager
* Recommends gvfs (Closes: #491827)
* Pass --disable-scrollkeeper in DEB_CONFIGURE_EXTRA_FLAGS
* debian/patches/007-fix-gnome-doc-utils-path.patch:
  - Removed, not needed anymore
* debian/patches/008-fix-volume-identifier-crash.patch:
  - Removed, merged upstream
* debian/patches/011_nautilus_menu_move.patch:
 - Move CD/DVD Creator Menu to Acessories, taken from Ubuntu

[ Luca Bruno ]
* debian/control.in:
  - Add Build-Depend gtk-doc-tools 1.9.
* debian/patches/006-fix-libdvdcss.patch:
  - Removed as applied upstream.

[ Josselin Mouette ]
* New upstream release.
* Update build-dependencies.
* Move the translations and data to a new brasero-common package.
* Rewrite the descriptions.
* Add -dev depends to the development package.
* Remove inappropriate recommends in the library package.
* Let’s not forget dvd+rw-tools so that we can write DVDs too.
* Rework dependencies accordingly.
* Put the nautilus extension in brasero.
* Conflict against nautilus-cd-burner to avoid having two burning 
  extensions.
* Include clean-la.mk and gnome-version.mk; build-depend on 
  gnome-pkg-tools 0.7.
* Don’t run dh_makeshlibs on brasero and libbrasero-plugins.
* 011_nautilus_menu_move.patch: add NoDisplay=true, this icon is 
  duplicating existing functionality (brasero icon in sound&video 
  menu, and nautilus autorun).
* Update list of copyright holders.

[ Emilio Pozuelo Monfort ]
* debian/copyright: updated.

[ Josselin Mouette ]
* copyright: improve indentation, and point to versioned LGPL.
* 090_relibtoolize.patch: add a relibtoolization patch to avoid the 
  rpath crap.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/***************************************************************************
2
 
 *            scsi-read-toc-pma-atip.h
3
 
 *
4
 
 *  Fri Oct 27 08:16:39 2006
5
 
 *  Copyright  2006  Rouquier Philippe
6
 
 *  <Rouquier Philippe@localhost.localdomain>
7
 
 ****************************************************************************/
8
 
 
9
 
/*
10
 
 * This program is free software; you can redistribute it and/or modify
11
 
 * it under the terms of the GNU General Public License as published by
12
 
 * the Free Software Foundation; either version 2 of the License, or
13
 
 * (at your option) any later version.
14
 
 * 
15
 
 * This program is distributed in the hope that it will be useful,
16
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18
 
 * GNU Library General Public License for more details.
19
 
 * 
20
 
 * You should have received a copy of the GNU General Public License
21
 
 * along with this program; if not, write to the Free Software
22
 
 * Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301,  USA
23
 
 */
24
 
 
25
 
#include <glib.h>
26
 
 
27
 
#include "scsi-base.h"
28
 
 
29
 
#ifndef _SCSI_READ_TOC_PMA_ATIP_H
30
 
#define _SCSI_READ_TOC_PMA_ATIP_H
31
 
 
32
 
G_BEGIN_DECLS
33
 
 
34
 
#if G_BYTE_ORDER == G_LITTLE_ENDIAN
35
 
 
36
 
struct _BraseroScsiTocPmaAtipHdr {
37
 
        uchar len                       [2];
38
 
 
39
 
        uchar first_track_session;
40
 
        uchar last_track_session;
41
 
};
42
 
 
43
 
struct _BraseroScsiTocDesc {
44
 
        uchar reserved0;
45
 
 
46
 
        uchar control                   :4; /* BraseroScsiTrackMode             */
47
 
        uchar adr                       :4; /* BraseroScsiQSubChannelProgAreaMode       */
48
 
 
49
 
        uchar track_num;
50
 
        uchar reserved1;
51
 
 
52
 
        uchar track_start               [4];
53
 
};
54
 
 
55
 
struct _BraseroScsiRawTocDesc {
56
 
        uchar session_num;
57
 
 
58
 
        uchar control                   :4; /* BraseroScsiTrackMode             */
59
 
        uchar adr                       :4; /* BraseroScsiQSubChannelLeadinMode */
60
 
 
61
 
        /* Q sub-channel data */
62
 
        uchar track_num;
63
 
 
64
 
        uchar point;                    /* BraseroScsiQSubChannelLeadinMode5 or BraseroScsiQSubChannelLeadinMode1 */
65
 
        uchar min;
66
 
        uchar sec;
67
 
        uchar frame;
68
 
 
69
 
        uchar zero;
70
 
        uchar p_min;
71
 
        uchar p_sec;
72
 
        uchar p_frame;
73
 
};
74
 
 
75
 
struct _BraseroScsiPmaDesc {
76
 
        uchar reserved0;
77
 
 
78
 
        uchar control                   :4; /* BraseroScsiTrackMode             */
79
 
        uchar adr                       :4; /* BraseroScsiQSubChannelPmaMode    */
80
 
 
81
 
        uchar track_num;                        /* always 0 */
82
 
 
83
 
        uchar point;                            /* see BraseroScsiQSubChannelPmaMode */
84
 
        uchar min;
85
 
        uchar sec;
86
 
        uchar frame;
87
 
 
88
 
        uchar zero;
89
 
        uchar p_min;
90
 
        uchar p_sec;
91
 
        uchar p_frame;
92
 
};
93
 
 
94
 
struct _BraseroScsiAtipDesc {
95
 
        uchar reference_speed           :3;     /* 1 */
96
 
        uchar reserved0                 :1;
97
 
        uchar indicative_target_wrt_pwr :4;
98
 
 
99
 
        uchar reserved1                 :6;     /* 2 */
100
 
        uchar unrestricted_use          :1;
101
 
        uchar bit0                      :1;
102
 
 
103
 
        uchar A3_valid                  :1;     /* 3 */
104
 
        uchar A2_valid                  :1;
105
 
        uchar A1_valid                  :1;
106
 
        uchar disc_sub_type             :3;
107
 
        uchar erasable                  :1;
108
 
        uchar bit1                      :1;
109
 
 
110
 
        uchar reserved2;                        /* 4 */
111
 
 
112
 
        uchar leadin_mn;
113
 
        uchar leadin_sec;
114
 
        uchar leadin_frame;
115
 
        uchar reserved3;                        /* 8 */
116
 
 
117
 
        /* Additional capacity for high capacity CD-R,
118
 
         * otherwise last possible leadout */
119
 
        uchar leadout_mn;
120
 
        uchar leadout_sec;
121
 
        uchar leadout_frame;
122
 
        uchar reserved4;                        /* 12 */
123
 
 
124
 
        /* Write strategy recording parameters.
125
 
         * See MMC1 and MMC2 for a description. */
126
 
        uchar A1_data                   [3];
127
 
        uchar reserved5;
128
 
        
129
 
        uchar A2_data                   [3];
130
 
        uchar reserved6;
131
 
 
132
 
        uchar A3_data                   [3];
133
 
        uchar reserved7;
134
 
 
135
 
        /* Be careful here since the following is only true for MMC3. That means
136
 
         * if we use this size with a MMC1/2 drives it returns an error (invalid
137
 
         * field). The following value is not really useful anyway. */
138
 
        uchar S4_data                   [3];
139
 
        uchar reserved8;
140
 
};
141
 
 
142
 
#else
143
 
 
144
 
struct _BraseroScsiTocPmaAtipHdr {
145
 
        uchar len                       [2];
146
 
 
147
 
        uchar first_track_session;
148
 
        uchar last_track_session;
149
 
};
150
 
 
151
 
struct _BraseroScsiTocDesc {
152
 
        uchar reserved0;
153
 
 
154
 
        uchar adr                       :4;
155
 
        uchar control                   :4;
156
 
 
157
 
        uchar track_num;
158
 
        uchar reserved1;
159
 
 
160
 
        uchar track_start               [4];
161
 
};
162
 
 
163
 
struct _BraseroScsiRawTocDesc {
164
 
        uchar session_num;
165
 
 
166
 
        uchar adr                       :4;
167
 
        uchar control                   :4;
168
 
 
169
 
        uchar track_num;
170
 
 
171
 
        uchar point;
172
 
        uchar min;
173
 
        uchar sec;
174
 
        uchar frame;
175
 
 
176
 
        uchar zero;
177
 
        uchar p_min;
178
 
        uchar p_sec;
179
 
        uchar p_frame;
180
 
};
181
 
 
182
 
struct _BraseroScsiPmaDesc {
183
 
        uchar reserved0;
184
 
 
185
 
        uchar adr                       :4;
186
 
        uchar control                   :4;
187
 
 
188
 
        uchar track_num;
189
 
 
190
 
        uchar point;
191
 
        uchar min;
192
 
        uchar sec;
193
 
        uchar frame;
194
 
 
195
 
        uchar zero;
196
 
        uchar p_min;
197
 
        uchar p_sec;
198
 
        uchar p_frame;
199
 
};
200
 
 
201
 
struct _BraseroScsiAtipDesc {
202
 
        uchar indicative_target_wrt_pwr :4;
203
 
        uchar reserved0                 :1;
204
 
        uchar reference_speed           :3;
205
 
 
206
 
        uchar bit0                      :1;
207
 
        uchar unrestricted_use          :1;
208
 
        uchar reserved1                 :6;
209
 
 
210
 
        uchar bit1                      :1;
211
 
        uchar erasable                  :1;
212
 
        uchar disc_sub_type             :3;
213
 
        uchar A1_valid                  :1;
214
 
        uchar A2_valid                  :1;
215
 
        uchar A3_valid                  :1;
216
 
 
217
 
        uchar reserved2;
218
 
 
219
 
        uchar leadin_start_time_mn;
220
 
        uchar leadin_start_time_sec;
221
 
        uchar leadin_start_time_frame;
222
 
        uchar reserved3;
223
 
 
224
 
        /* Additional capacity for high capacity CD-R,
225
 
         * otherwise last possible leadout */
226
 
        uchar leadout_mn;
227
 
        uchar leadout_sec;
228
 
        uchar leadout_frame;
229
 
        uchar reserved4;
230
 
 
231
 
        /* write strategy recording parameters */
232
 
        uchar A1_data                   [3];
233
 
        uchar reserved5;
234
 
        
235
 
        uchar A2_data                   [3];
236
 
        uchar reserved6;
237
 
 
238
 
        uchar A3_data                   [3];
239
 
        uchar reserved7;
240
 
 
241
 
        uchar S4_data                   [3];
242
 
        uchar reserved8;
243
 
};
244
 
 
245
 
#endif
246
 
 
247
 
typedef struct _BraseroScsiTocDesc BraseroScsiTocDesc;
248
 
typedef struct _BraseroScsiRawTocDesc BraseroScsiRawTocDesc;
249
 
typedef struct _BraseroScsiPmaDesc BraseroScsiPmaDesc;
250
 
typedef struct _BraseroScsiAtipDesc BraseroScsiAtipDesc;
251
 
 
252
 
typedef struct _BraseroScsiTocPmaAtipHdr BraseroScsiTocPmaAtipHdr;
253
 
 
254
 
/* multiple toc descriptors may be returned */
255
 
struct _BraseroScsiFormattedTocData {
256
 
        BraseroScsiTocPmaAtipHdr hdr    [1];
257
 
        BraseroScsiTocDesc desc         [0];
258
 
};
259
 
typedef struct _BraseroScsiFormattedTocData BraseroScsiFormattedTocData;
260
 
 
261
 
/* multiple toc descriptors may be returned */
262
 
struct _BraseroScsiRawTocData {
263
 
        BraseroScsiTocPmaAtipHdr hdr    [1];
264
 
        BraseroScsiRawTocDesc desc      [0];
265
 
};
266
 
typedef struct _BraseroScsiRawTocData BraseroScsiRawTocData;
267
 
 
268
 
/* multiple pma descriptors may be returned */
269
 
struct _BraseroScsiPmaData {
270
 
        BraseroScsiTocPmaAtipHdr hdr    [1];
271
 
        BraseroScsiPmaDesc desc         [0];    
272
 
};
273
 
typedef struct _BraseroScsiPmaData BraseroScsiPmaData;
274
 
 
275
 
struct _BraseroScsiAtipData {
276
 
        BraseroScsiTocPmaAtipHdr hdr    [1];
277
 
        BraseroScsiAtipDesc desc        [1];
278
 
};
279
 
typedef struct _BraseroScsiAtipData BraseroScsiAtipData;
280
 
 
281
 
struct _BraseroScsiMultisessionData {
282
 
        BraseroScsiTocPmaAtipHdr hdr    [1];
283
 
        BraseroScsiTocDesc desc         [1];
284
 
};
285
 
typedef struct _BraseroScsiMultisessionData BraseroScsiMultisessionData;
286
 
 
287
 
typedef enum {
288
 
BRASERO_SCSI_CD_TEXT_ALBUM_TITLE        = 0x80,
289
 
BRASERO_SCSI_CD_TEXT_PERFORMER_NAME     = 0x81,
290
 
BRASERO_SCSI_CD_TEXT_SONGWRITER_NAME    = 0x82,
291
 
BRASERO_SCSI_CD_TEXT_COMPOSER_NAME      = 0x83,
292
 
BRASERO_SCSI_CD_TEXT_ARRANGER_NAME      = 0x84,
293
 
BRASERO_SCSI_CD_TEXT_ARTIST_NAME        = 0x85,
294
 
BRASERO_SCSI_CD_TEXT_DISC_ID_INFO       = 0x86,
295
 
BRASERO_SCSI_CD_TEXT_GENRE_ID_INFO      = 0x87,
296
 
BRASERO_SCSI_CD_TEXT_TOC_1              = 0x88,
297
 
BRASERO_SCSI_CD_TEXT_TOC_2              = 0x89,
298
 
BRASERO_SCSI_CD_TEXT_RESERVED_1         = 0x8A,
299
 
BRASERO_SCSI_CD_TEXT_RESERVED_2         = 0x8B,
300
 
BRASERO_SCSI_CD_TEXT_RESERVED_3         = 0x8C,
301
 
BRASERO_SCSI_CD_TEXT_RESERVED_CONTENT   = 0x8D,
302
 
BRASERO_SCSI_CD_TEXT_UPC_EAN_ISRC       = 0x8E,
303
 
BRASERO_SCSI_CD_TEXT_BLOCK_SIZE         = 0x8F,
304
 
} BraseroScsiCDTextPackType;
305
 
 
306
 
struct _BraseroScsiCDTextPackData {
307
 
        uchar type;
308
 
        uchar track_num;
309
 
        uchar pack_num;
310
 
 
311
 
        uchar char_pos                  :4;
312
 
        uchar block_num                 :3;
313
 
        uchar double_byte               :1;
314
 
 
315
 
        uchar text                      [12];
316
 
        uchar crc                       [2];
317
 
};
318
 
typedef struct _BraseroScsiCDTextPackData BraseroScsiCDTextPackData;
319
 
 
320
 
struct _BraseroScsiCDTextData {
321
 
        BraseroScsiTocPmaAtipHdr hdr    [1];
322
 
        BraseroScsiCDTextPackData pack  [0];
323
 
};
324
 
typedef struct _BraseroScsiCDTextData BraseroScsiCDTextData;
325
 
 
326
 
#define BRASERO_SCSI_TRACK_LEADOUT_START        0xAA
327
 
 
328
 
G_END_DECLS
329
 
 
330
 
#endif /* _SCSI_READ_TOC_PMA_ATIP_H */