libcdio  0.83
Data Fields
cdrom_drive_s Struct Reference

Structure for cdparanoia's CD-ROM access. More...

#include <cdda.h>

Data Fields

CdIo_tp_cdio
int opened
char * cdda_device_name
char * drive_model
int drive_type
int bigendianp
int nsectors
int cd_extra
bool b_swap_bytes
track_t tracks
TOC_t disc_toc [MAXTRK]
lsn_t audio_first_sector
lsn_t audio_last_sector
int errordest
int messagedest
char * errorbuf
char * messagebuf
int(* enable_cdda )(cdrom_drive_t *d, int onoff)
int(* read_toc )(cdrom_drive_t *d)
long(* read_audio )(cdrom_drive_t *d, void *p, lsn_t begin, long sectors)
int(* set_speed )(cdrom_drive_t *d, int speed)
int error_retry
int report_all
int is_atapi
int is_mmc
int i_test_flags

Detailed Description

Structure for cdparanoia's CD-ROM access.


Field Documentation

lsn_t cdrom_drive_s::audio_first_sector
lsn_t cdrom_drive_s::audio_last_sector
bool cdrom_drive_s::b_swap_bytes

Swap bytes if Endian-ness of drive mismatches the endian-ness of the computer?

int cdrom_drive_s::bigendianp

Whether data returned on the CDDA is bigendian or not. 1 if big endian, 0 if little endian and -1 if we don't know.

int cdrom_drive_s::cd_extra

-1 if we can't get multisession info, 0 if there is one session only or the multi-session LBA is less than or 100 (don't ask me why – I don't know), and 1 if the multi-session lba is greater than 100.

char* cdrom_drive_s::cdda_device_name
TOC_t cdrom_drive_s::disc_toc[MAXTRK]

info here starts origin 0 rather than the first track number (usually 1). So to take a track number and use it here, subtract off cdio_get_first_track_num() beforehand.

char* cdrom_drive_s::drive_model
int cdrom_drive_s::drive_type
int(* cdrom_drive_s::enable_cdda)(cdrom_drive_t *d, int onoff)
int cdrom_drive_s::error_retry
char* cdrom_drive_s::errorbuf
int cdrom_drive_s::errordest
int cdrom_drive_s::i_test_flags

Normally set 0. But if we are testing paranoia operation this can be set to one of the flag masks to simulate a particular kind of failure.

int cdrom_drive_s::is_atapi
int cdrom_drive_s::is_mmc
char* cdrom_drive_s::messagebuf
int cdrom_drive_s::messagedest
int cdrom_drive_s::nsectors

Number of sectors use in reading. Multiply by CDIO_CD_FRAMESIZE_RAW to get number of bytes used in the read buffer.

int cdrom_drive_s::opened

This struct may just represent a candidate for opening

CdIo_t* cdrom_drive_s::p_cdio
long(* cdrom_drive_s::read_audio)(cdrom_drive_t *d, void *p, lsn_t begin, long sectors)
int(* cdrom_drive_s::read_toc)(cdrom_drive_t *d)
int cdrom_drive_s::report_all
int(* cdrom_drive_s::set_speed)(cdrom_drive_t *d, int speed)
track_t cdrom_drive_s::tracks

The documentation for this struct was generated from the following file:

Generated for libcdio by doxygen 1.8.1.1