filename | src/drivers/cdrom/isofs.h |
changeset | 1179:af1c5d7d5a5a |
prev | 1152:6464d890cc9e |
author | nkeynes |
date | Sat Jan 26 14:00:48 2013 +1000 (11 years ago) |
permissions | -rw-r--r-- |
last change | Change glib includes to #include <glib.h> rather than the individual headers, as recent glib versions are breaking on this |
view | annotate | diff | log | raw |
1 /**
2 * $Id$
3 *
4 * libisofs adapter
5 *
6 * Copyright (c) 2010 Nathan Keynes.
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 */
19 #ifndef cdrom_isofs_H
20 #define cdrom_isofs_H 1
22 #include <stdint.h>
23 #include <libisofs.h>
24 #include "drivers/cdrom/sector.h"
26 /**
27 * Construct an IsoFilesystem from an existing sector source
28 */
29 IsoImageFilesystem *iso_filesystem_new_from_source( sector_source_t track, cdrom_lba_t start, ERROR *err );
30 IsoImageFilesystem *iso_filesystem_new_from_disc( cdrom_disc_t disc, cdrom_lba_t start, ERROR *err );
31 IsoImageFilesystem *iso_filesystem_new_from_track( cdrom_disc_t disc, cdrom_track_t track, ERROR *err );
34 /**
35 * Convenience function to read an entire IsoFileSource
36 */
37 int iso_source_file_read_all( IsoFileSource *file, unsigned char *buf, size_t max_size );
39 /**
40 * Construct an IsoImage image from an existing sector source, for use in
41 * creating a modified image
42 */
43 IsoImage *iso_image_new_from_source( sector_source_t track, cdrom_lba_t start, ERROR *err );
45 /**
46 * Construct an IsoImage from a cdrom disc and sector position.
47 * @return a new isofs_reader, or NULL on an error.
48 */
49 IsoImage *iso_image_new_from_disc( cdrom_disc_t disc, cdrom_lba_t start_sector, ERROR *err );
51 IsoImage *iso_image_new_from_track( cdrom_disc_t disc, cdrom_track_t track, ERROR *err );
53 /**
54 * Construct a sector source from a given IsoImage.
55 */
56 sector_source_t iso_sector_source_new( IsoImage *image, sector_mode_t mode, cdrom_lba_t start_sector,
57 const char *bootstrap, ERROR *err );
60 /** Prototypes for "Internal" Libisofs functions */
61 int iso_mem_stream_new(unsigned char *buf, size_t size, IsoStream **stream);
63 #endif /* !cdrom_isofs_H */
.