image/common.c, Makefile.am: common image routines.
src/cd-info.c, *.right: Now show file images under "drive capability" bincue.c/nrg.c: report file image "drive capability"
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
$Id: nrg.c,v 1.4 2004/03/20 22:46:57 rocky Exp $
|
||||
$Id: nrg.c,v 1.5 2004/04/23 01:01:37 rocky Exp $
|
||||
|
||||
Copyright (C) 2001, 2003 Herbert Valerio Riedel <hvr@gnu.org>
|
||||
Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com>
|
||||
@@ -48,7 +48,7 @@
|
||||
#include "cdio_private.h"
|
||||
#include "_cdio_stdio.h"
|
||||
|
||||
static const char _rcsid[] = "$Id: nrg.c,v 1.4 2004/03/20 22:46:57 rocky Exp $";
|
||||
static const char _rcsid[] = "$Id: nrg.c,v 1.5 2004/04/23 01:01:37 rocky Exp $";
|
||||
|
||||
/* structures used */
|
||||
|
||||
@@ -177,6 +177,8 @@ typedef struct {
|
||||
static bool _cdio_parse_nero_footer (_img_private_t *_obj);
|
||||
static uint32_t _cdio_stat_size (void *env);
|
||||
|
||||
#include "image/common.c"
|
||||
|
||||
/* Updates internal track TOC, so we can later
|
||||
simulate ioctl(CDROMREADTOCENTRY).
|
||||
*/
|
||||
@@ -1074,30 +1076,6 @@ cdio_get_default_device_nrg(void)
|
||||
return drive;
|
||||
}
|
||||
|
||||
/*!
|
||||
Return the number of of the first track.
|
||||
CDIO_INVALID_TRACK is returned on error.
|
||||
*/
|
||||
static track_t
|
||||
_cdio_get_first_track_num(void *env)
|
||||
{
|
||||
_img_private_t *_obj = env;
|
||||
|
||||
return _obj->first_track_num;
|
||||
}
|
||||
|
||||
/*!
|
||||
Return the number of tracks. We fake it an just say there's
|
||||
one big track.
|
||||
*/
|
||||
static track_t
|
||||
_cdio_get_num_tracks(void *env)
|
||||
{
|
||||
_img_private_t *_obj = env;
|
||||
|
||||
return _obj->total_tracks;
|
||||
}
|
||||
|
||||
/*!
|
||||
Return the number of tracks in the current medium.
|
||||
CDIO_INVALID_TRACK is returned on error.
|
||||
@@ -1144,28 +1122,6 @@ _cdio_get_track_green(void *env, track_t track_num)
|
||||
return _obj->tocent[track_num-1].track_green;
|
||||
}
|
||||
|
||||
/*!
|
||||
Return the starting MSF (minutes/secs/frames) for the track number
|
||||
track_num in obj. Tracks numbers start at 1.
|
||||
The "leadout" track is specified either by
|
||||
using track_num LEADOUT_TRACK or the total tracks+1.
|
||||
*/
|
||||
static bool
|
||||
_cdio_get_track_msf(void *env, track_t track_num, msf_t *msf)
|
||||
{
|
||||
_img_private_t *_obj = env;
|
||||
|
||||
if (NULL == msf) return 1;
|
||||
|
||||
if (track_num == CDIO_CDROM_LEADOUT_TRACK) track_num = _obj->total_tracks+1;
|
||||
|
||||
if (track_num <= _obj->total_tracks+1 && track_num != 0) {
|
||||
*msf = _obj->tocent[track_num-1].start_msf;
|
||||
return true;
|
||||
} else
|
||||
return false;
|
||||
}
|
||||
|
||||
CdIo *
|
||||
cdio_open_nrg (const char *source_name)
|
||||
{
|
||||
@@ -1178,12 +1134,14 @@ cdio_open_nrg (const char *source_name)
|
||||
.get_arg = _cdio_get_arg,
|
||||
.get_devices = cdio_get_devices_nrg,
|
||||
.get_default_device = cdio_get_default_device_nrg,
|
||||
.get_first_track_num= _cdio_get_first_track_num,
|
||||
.get_num_tracks = _cdio_get_num_tracks,
|
||||
.get_drive_cap = _cdio_image_get_drive_cap,
|
||||
.get_first_track_num= _cdio_image_get_first_track_num,
|
||||
.get_mcn = _cdio_image_get_mcn,
|
||||
.get_num_tracks = _cdio_image_get_num_tracks,
|
||||
.get_track_format = _cdio_get_track_format,
|
||||
.get_track_green = _cdio_get_track_green,
|
||||
.get_track_lba = NULL, /* Will use generic routine via msf */
|
||||
.get_track_msf = _cdio_get_track_msf,
|
||||
.get_track_msf = _cdio_image_get_track_msf,
|
||||
.lseek = _cdio_lseek,
|
||||
.read = _cdio_read,
|
||||
.read_audio_sectors = _cdio_read_audio_sectors,
|
||||
|
||||
Reference in New Issue
Block a user