1 /*
2  * This file has been modified for the cdrkit suite.
3  *
4  * The behaviour and appearence of the program code below can differ to a major
5  * extent from the version distributed by the original author(s).
6  *
7  * For details, see Changelog file distributed with the cdrkit package. If you
8  * received this file from another source then ask the distributing person for
9  * a log of modifications.
10  *
11  */
12 
13 /* @(#)ifo_types.h	1.2 04/03/02 joerg */
14 
15 #ifndef	_IFO_TYPES_H
16 #define	_IFO_TYPES_H
17 /*
18  * Copyright (C) 2001, 2002 Billy Biggs <vektor@dumbterm.net>,
19  *			    H�kan Hjort <d95hjort@dtek.chalmers.se>,
20  *			    Olaf Beck <olaf_sc@yahoo.com>
21  *			    (I only did the cut down no other contribs)
22  *			    J�rg Schilling <schilling@fokus.gmd.de>
23  *			    (making the code portable)
24  * This program is free software; you can redistribute it and/or modify
25  * it under the terms of the GNU General Public License as published by
26  * the Free Software Foundation; either version 2 of the License, or (at
27  * your option) any later version.
28  *
29  * This program is distributed in the hope that it will be useful, but
30  * WITHOUT ANY WARRANTY; without even the implied warranty of
31  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
32  * General Public License for more details.
33  *
34  * You should have received a copy of the GNU General Public License
35  * along with this program; if not, write to the Free Software
36  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
37  */
38 
39 /*
40  * NOTE: This is a cut down version of libdvdread for genisoimage, due
41  * to portability issues with the current libdvdread according to
42  * the maintainer of genisoimage.
43  * This cut down version only reads from a harddisk file structure
44  * and it only implements the functions necessary inorder to make
45  * genisoimage produce valid DVD-Video images.
46  * DON'T USE THIS LIBRARY IN ANY OTHER PROGRAM GET THE REAL
47  * LIBDVDREAD INSTEAD
48  */
49 
50 #include "dvd_reader.h"
51 
52 
53 typedef struct {
54 	UInt32_t	title_set_sector; 	/* sector */
55 } title_info_t;
56 
57 
58 typedef struct {
59 	UInt16_t	nr_of_srpts;
60 	title_info_t *	title;			/* array of title info */
61 } tt_srpt_t;
62 
63 typedef struct {
64 	UInt32_t	vmg_last_sector;	/*sector */
65 	UInt32_t	vmgi_last_sector;	/* sector */
66 	UInt16_t	vmg_nr_of_title_sets;
67 	UInt32_t	vmgm_vobs;		/* sector */
68 	UInt32_t	tt_srpt;		/* sector */
69 } vmgi_mat_t;
70 
71 
72 
73 typedef struct {
74 	UInt32_t	vts_last_sector;	/* sector */
75 	UInt32_t	vtsi_last_sector;	/* sector */
76 	UInt32_t	vtsm_vobs;		/* sector */
77 	UInt32_t	vtstt_vobs;		/* sector */
78 } vtsi_mat_t;
79 
80 
81 typedef struct {
82 	/* VMGI */
83 	vmgi_mat_t *	vmgi_mat;
84 	tt_srpt_t  *	tt_srpt;
85 
86 	/* VTSI */
87 	vtsi_mat_t *	vtsi_mat;
88 } ifo_handle_t;
89 
90 
91 #endif	/* _IFO_TYPES_H */
92