annotate dvdread/ifo_read.h @ 33:c743d79f187b src

Move installed headers into dvdread directory to make them easier to use in a consistent way without installing.
author reimar
date Wed, 31 Dec 2008 08:43:03 +0000
parents ifo_read.h@ac07d427fbc6
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
1 /*
22
447c5319a522 Convert all ISO8859-1 sequences to proper UTF-8.
diego
parents: 21
diff changeset
2 * Copyright (C) 2000, 2001, 2002 Björn Englund <d4bjorn@dtek.chalmers.se>,
447c5319a522 Convert all ISO8859-1 sequences to proper UTF-8.
diego
parents: 21
diff changeset
3 * Håkan Hjort <d95hjort@dtek.chalmers.se>
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
4 *
21
4aa618ae094f Use consistent license headers everywhere: Fix FSF address and boilerplate.
diego
parents: 20
diff changeset
5 * This file is part of libdvdread.
4aa618ae094f Use consistent license headers everywhere: Fix FSF address and boilerplate.
diego
parents: 20
diff changeset
6 *
4aa618ae094f Use consistent license headers everywhere: Fix FSF address and boilerplate.
diego
parents: 20
diff changeset
7 * libdvdread is free software; you can redistribute it and/or modify
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
10 * (at your option) any later version.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
11 *
21
4aa618ae094f Use consistent license headers everywhere: Fix FSF address and boilerplate.
diego
parents: 20
diff changeset
12 * libdvdread is distributed in the hope that it will be useful,
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
15 * GNU General Public License for more details.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
16 *
21
4aa618ae094f Use consistent license headers everywhere: Fix FSF address and boilerplate.
diego
parents: 20
diff changeset
17 * You should have received a copy of the GNU General Public License along
4aa618ae094f Use consistent license headers everywhere: Fix FSF address and boilerplate.
diego
parents: 20
diff changeset
18 * with libdvdread; if not, write to the Free Software Foundation, Inc.,
4aa618ae094f Use consistent license headers everywhere: Fix FSF address and boilerplate.
diego
parents: 20
diff changeset
19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
20 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
21
23
ac07d427fbc6 Use consistent multiple inclusion guards everywhere:
diego
parents: 22
diff changeset
22 #ifndef LIBDVDREAD_IFO_READ_H
ac07d427fbc6 Use consistent multiple inclusion guards everywhere:
diego
parents: 22
diff changeset
23 #define LIBDVDREAD_IFO_READ_H
ac07d427fbc6 Use consistent multiple inclusion guards everywhere:
diego
parents: 22
diff changeset
24
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
25 #include "ifo_types.h"
33
c743d79f187b Move installed headers into dvdread directory to make them easier to
reimar
parents: 23
diff changeset
26 #include "dvdread/dvd_reader.h"
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
27
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
28 #ifdef __cplusplus
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
29 extern "C" {
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
30 #endif
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
31
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
32 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
33 * handle = ifoOpen(dvd, title);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
34 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
35 * Opens an IFO and reads in all the data for the IFO file corresponding to the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
36 * given title. If title 0 is given, the video manager IFO file is read.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
37 * Returns a handle to a completely parsed structure.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
38 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
39 ifo_handle_t *ifoOpen(dvd_reader_t *, int );
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
40
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
41 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
42 * handle = ifoOpenVMGI(dvd);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
43 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
44 * Opens an IFO and reads in _only_ the vmgi_mat data. This call can be used
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
45 * together with the calls below to read in each segment of the IFO file on
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
46 * demand.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
47 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
48 ifo_handle_t *ifoOpenVMGI(dvd_reader_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
49
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
50 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
51 * handle = ifoOpenVTSI(dvd, title);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
52 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
53 * Opens an IFO and reads in _only_ the vtsi_mat data. This call can be used
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
54 * together with the calls below to read in each segment of the IFO file on
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
55 * demand.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
56 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
57 ifo_handle_t *ifoOpenVTSI(dvd_reader_t *, int);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
58
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
59 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
60 * ifoClose(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
61 * Cleans up the IFO information. This will free all data allocated for the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
62 * substructures.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
63 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
64 void ifoClose(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
65
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
66 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
67 * The following functions are for reading only part of the VMGI/VTSI files.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
68 * Returns 1 if the data was successfully read and 0 on error.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
69 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
70
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
71 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
72 * okay = ifoRead_PLT_MAIT(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
73 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
74 * Read in the Parental Management Information table, filling the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
75 * ifofile->ptl_mait structure and its substructures. This data is only
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
76 * located in the video manager information file. This fills the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
77 * ifofile->ptl_mait structure and all its substructures.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
78 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
79 int ifoRead_PTL_MAIT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
80
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
81 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
82 * okay = ifoRead_VTS_ATRT(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
83 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
84 * Read in the attribute table for the main menu vob, filling the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
85 * ifofile->vts_atrt structure and its substructures. Only located in the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
86 * video manager information file. This fills in the ifofile->vts_atrt
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
87 * structure and all its substructures.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
88 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
89 int ifoRead_VTS_ATRT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
90
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
91 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
92 * okay = ifoRead_TT_SRPT(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
93 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
94 * Reads the title info for the main menu, filling the ifofile->tt_srpt
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
95 * structure and its substructures. This data is only located in the video
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
96 * manager information file. This structure is mandatory in the IFO file.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
97 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
98 int ifoRead_TT_SRPT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
99
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
100 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
101 * okay = ifoRead_VTS_PTT_SRPT(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
102 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
103 * Reads in the part of title search pointer table, filling the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
104 * ifofile->vts_ptt_srpt structure and its substructures. This data is only
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
105 * located in the video title set information file. This structure is
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
106 * mandatory, and must be included in the VTSI file.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
107 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
108 int ifoRead_VTS_PTT_SRPT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
109
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
110 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
111 * okay = ifoRead_FP_PGC(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
112 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
113 * Reads in the first play program chain data, filling the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
114 * ifofile->first_play_pgc structure. This data is only located in the video
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
115 * manager information file (VMGI). This structure is optional.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
116 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
117 int ifoRead_FP_PGC(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
118
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
119 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
120 * okay = ifoRead_PGCIT(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
121 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
122 * Reads in the program chain information table for the video title set. Fills
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
123 * in the ifofile->vts_pgcit structure and its substructures, which includes
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
124 * the data for each program chain in the set. This data is only located in
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
125 * the video title set information file. This structure is mandatory, and must
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
126 * be included in the VTSI file.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
127 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
128 int ifoRead_PGCIT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
129
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
130 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
131 * okay = ifoRead_PGCI_UT(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
132 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
133 * Reads in the menu PGCI unit table for the menu VOB. For the video manager,
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
134 * this corresponds to the VIDEO_TS.VOB file, and for each title set, this
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
135 * corresponds to the VTS_XX_0.VOB file. This data is located in both the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
136 * video manager and video title set information files. For VMGI files, this
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
137 * fills the ifofile->vmgi_pgci_ut structure and all its substructures. For
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
138 * VTSI files, this fills the ifofile->vtsm_pgci_ut structure.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
139 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
140 int ifoRead_PGCI_UT(ifo_handle_t *);
20
fce16251755c Remove all trailing whitespace,
rathann
parents: 3
diff changeset
141
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
142 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
143 * okay = ifoRead_VTS_TMAPT(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
144 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
145 * Reads in the VTS Time Map Table, this data is only located in the video
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
146 * title set information file. This fills the ifofile->vts_tmapt structure
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
147 * and all its substructures. When pressent enables VOBU level time-based
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
148 * seeking for One_Sequential_PGC_Titles.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
149 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
150 int ifoRead_VTS_TMAPT(ifo_handle_t *);
20
fce16251755c Remove all trailing whitespace,
rathann
parents: 3
diff changeset
151
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
152 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
153 * okay = ifoRead_C_ADT(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
154 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
155 * Reads in the cell address table for the menu VOB. For the video manager,
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
156 * this corresponds to the VIDEO_TS.VOB file, and for each title set, this
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
157 * corresponds to the VTS_XX_0.VOB file. This data is located in both the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
158 * video manager and video title set information files. For VMGI files, this
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
159 * fills the ifofile->vmgm_c_adt structure and all its substructures. For VTSI
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
160 * files, this fills the ifofile->vtsm_c_adt structure.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
161 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
162 int ifoRead_C_ADT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
163
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
164 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
165 * okay = ifoRead_TITLE_C_ADT(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
166 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
167 * Reads in the cell address table for the video title set corresponding to
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
168 * this IFO file. This data is only located in the video title set information
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
169 * file. This structure is mandatory, and must be included in the VTSI file.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
170 * This call fills the ifofile->vts_c_adt structure and its substructures.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
171 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
172 int ifoRead_TITLE_C_ADT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
173
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
174 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
175 * okay = ifoRead_VOBU_ADMAP(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
176 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
177 * Reads in the VOBU address map for the menu VOB. For the video manager, this
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
178 * corresponds to the VIDEO_TS.VOB file, and for each title set, this
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
179 * corresponds to the VTS_XX_0.VOB file. This data is located in both the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
180 * video manager and video title set information files. For VMGI files, this
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
181 * fills the ifofile->vmgm_vobu_admap structure and all its substructures. For
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
182 * VTSI files, this fills the ifofile->vtsm_vobu_admap structure.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
183 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
184 int ifoRead_VOBU_ADMAP(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
185
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
186 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
187 * okay = ifoRead_TITLE_VOBU_ADMAP(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
188 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
189 * Reads in the VOBU address map for the associated video title set. This data
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
190 * is only located in the video title set information file. This structure is
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
191 * mandatory, and must be included in the VTSI file. Fills the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
192 * ifofile->vts_vobu_admap structure and its substructures.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
193 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
194 int ifoRead_TITLE_VOBU_ADMAP(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
195
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
196 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
197 * okay = ifoRead_TXTDT_MGI(ifofile);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
198 *
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
199 * Reads in the text data strings for the DVD. Fills the ifofile->txtdt_mgi
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
200 * structure and all its substructures. This data is only located in the video
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
201 * manager information file. This structure is mandatory, and must be included
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
202 * in the VMGI file.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
203 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
204 int ifoRead_TXTDT_MGI(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
205
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
206 /**
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
207 * The following functions are used for freeing parsed sections of the
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
208 * ifo_handle_t structure and the allocated substructures. The free calls
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
209 * below are safe: they will not mind if you attempt to free part of an IFO
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
210 * file which was not read in or which does not exist.
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
211 */
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
212 void ifoFree_PTL_MAIT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
213 void ifoFree_VTS_ATRT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
214 void ifoFree_TT_SRPT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
215 void ifoFree_VTS_PTT_SRPT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
216 void ifoFree_FP_PGC(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
217 void ifoFree_PGCIT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
218 void ifoFree_PGCI_UT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
219 void ifoFree_VTS_TMAPT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
220 void ifoFree_C_ADT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
221 void ifoFree_TITLE_C_ADT(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
222 void ifoFree_VOBU_ADMAP(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
223 void ifoFree_TITLE_VOBU_ADMAP(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
224 void ifoFree_TXTDT_MGI(ifo_handle_t *);
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
225
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
226 #ifdef __cplusplus
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
227 };
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
228 #endif
23
ac07d427fbc6 Use consistent multiple inclusion guards everywhere:
diego
parents: 22
diff changeset
229 #endif /* LIBDVDREAD_IFO_READ_H */