summaryrefslogtreecommitdiff
path: root/libparanoia/README.interface
diff options
context:
space:
mode:
Diffstat (limited to 'libparanoia/README.interface')
-rw-r--r--libparanoia/README.interface75
1 files changed, 75 insertions, 0 deletions
diff --git a/libparanoia/README.interface b/libparanoia/README.interface
new file mode 100644
index 0000000..a7a44b4
--- /dev/null
+++ b/libparanoia/README.interface
@@ -0,0 +1,75 @@
+/*
+ * Exports (libparanoia) cdda_paranoia.h
+ */
+cdrom_paranoia *paranoia_init __PR((void * d, int nsectors));
+void paranoia_modeset __PR((cdrom_paranoia * p, int mode));
+long paranoia_seek __PR((cdrom_paranoia * p, long seek, int mode));
+Int16_t *paranoia_read __PR((cdrom_paranoia * p, void (*callback) (long, int)));
+Int16_t *paranoia_read_limited __PR((cdrom_paranoia * p, void (*callback) (long, int), int maxretries));
+void paranoia_free __PR((cdrom_paranoia * p));
+void paranoia_overlapset __PR((cdrom_paranoia * p, long overlap));
+
+/*
+ * Exports ?? (libparanoia) overlap.h
+ */
+extern void paranoia_resetall __PR((cdrom_paranoia * p));
+extern void paranoia_resetcache __PR((cdrom_paranoia * p));
+
+Supported:
+
+PARANOIA_MODE_VERIFY
+PARANOIA_MODE_OVERLAP
+PARANOIA_MODE_NEVERSKIP
+
+Unsupported:
+
+PARANOIA_MODE_FRAGMENT
+PARANOIA_MODE_SCRATCH
+PARANOIA_MODE_REPAIR
+
+
+
+/*
+ * Imports (global Code)
+ */
+cdda_disc_firstsector (cdrom_drive *d) -> long sector
+cdda_disc_lastsector (cdrom_drive *d) -> long sector
+cdda_read (cdrom_drive *d, void *buffer, long beginsector, long sectors) -> long sectors
+cdda_sector_gettrack (cdrom_drive *d,long sector) -> int trackno
+cdda_track_audiop (cdrom_drive *d,int track) -> int ??? /* Is audiotrack */
+cdda_track_firstsector (cdrom_drive *d,int track) -> long sector
+cdda_track_lastsector (cdrom_drive *d,int track) -> long sector
+cdda_tracks (cdrom_drive *d) -> int tracks
+
+callback (long inpos, int function)
+
+/*
+ * Imports (libc)
+ */
+calloc
+free
+malloc
+realloc
+
+memcmp
+memcpy
+memmove
+memset
+
+qsort
+
+/*--------------------------------------------------------------------------*/
+usalp = usal_open();
+bufsize = usal_bufsize(usalp, CDR_BUF_SIZE);
+nsecs = bufsize / SEC_SIZE;
+
+cdp = paranoia_init(usalp, nsecs);
+# paranoia_modeset(cdp, mode);
+# paranoia_overlapset(cdp, overlap);
+
+while (not ready) {
+ bp = paranoia_read(cdp, NULL);
+ write(f, bp, SEC_SISE);
+}
+
+paranoia_free(cdp);