Sha256: 911490bfb3344dad570c9ee9ee0ae5323d3386ceb8075f89ba62f4a7a231fcb9
Contents?: true
Size: 1.91 KB
Versions: 4
Compression:
Stored size: 1.91 KB
Contents
/** * Copyright (c) 2005 Claudio Bustos <clbustos@gmail.com> * This code is hereby licensed for public consumption under the * GNU GPL v2. * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "CdIo.h" static bool read_iso9660_pvd(const CdIo * p_cdio, track_format_t track_format, /* out */ iso9660_pvd_t * p_pvd) { switch (track_format) { case TRACK_FORMAT_CDI: case TRACK_FORMAT_XA: if (0 != cdio_read_mode2_sector(p_cdio, p_pvd, ISO_PVD_SECTOR, false)) return false; break; case TRACK_FORMAT_DATA: if (0 != cdio_read_mode1_sector(p_cdio, p_pvd, ISO_PVD_SECTOR, false)) return false; break; case TRACK_FORMAT_AUDIO: case TRACK_FORMAT_PSX: case TRACK_FORMAT_ERROR: default: return false; } return true; } VALUE rb_cdio_trackiso9660_init(VALUE obj, VALUE cd, VALUE track) { VALUE argv[2]; argv[0] = cd; argv[1] = track; rb_call_super(2, argv); GET_CDIO(cd, p_cdio); iso9660_pvd_t pvd; track_format_t track_format = cdio_get_track_format(p_cdio, FIX2INT(track)); // ok, empezamos con el chiste! if (read_iso9660_pvd(p_cdio, track_format, &pvd)) { // "system_id", "volume_id", "volumeset_id", // "preparer_id","publisher_id","application_id" rb_iv_set(obj, "@system_id", rb_str_new2(iso9660_get_system_id(&pvd))); rb_iv_set(obj, "@volume_id", rb_str_new2(iso9660_get_volume_id(&pvd))); rb_iv_set(obj, "@volumeset_id", rb_str_new2(iso9660_get_volumeset_id(&pvd))); rb_iv_set(obj, "@preparer_id", rb_str_new2(iso9660_get_preparer_id(&pvd))); rb_iv_set(obj, "@publisher_id", rb_str_new2(iso9660_get_publisher_id(&pvd))); rb_iv_set(obj, "@application_id", rb_str_new2(iso9660_get_application_id(&pvd))); } return obj; }
Version data entries
4 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
rb_cdio-0.2.0 | ./ext/CdIo_TrackIso9660.c |
rb_cdio-0.2.0 | ext/CdIo_TrackIso9660.c |
rb_cdio-0.2.1 | ext/CdIo_TrackIso9660.c |
rb_cdio-0.2.1 | ./ext/CdIo_TrackIso9660.c |