cdda_paranoia.h
上传用户:weiliju62
上传日期:2007-01-06
资源大小:619k
文件大小:2k
源码类别:

SCSI/ASPI

开发平台:

MultiPlatform

  1. /***
  2.  * CopyPolicy: GNU Public License 2 applies
  3.  * Copyright (C) by Monty (xiphmont@mit.edu)
  4.  *
  5.  ***/
  6. #ifndef _CDROM_PARANOIA_
  7. #define _CDROM_PARANOIA_
  8. #define CD_FRAMEWORDS (CD_FRAMESIZE_RAW/2)
  9. #define PARANOIA_CB_READ           0
  10. #define PARANOIA_CB_VERIFY         1
  11. #define PARANOIA_CB_FIXUP_EDGE     2
  12. #define PARANOIA_CB_FIXUP_ATOM     3
  13. #define PARANOIA_CB_SCRATCH        4
  14. #define PARANOIA_CB_REPAIR         5
  15. #define PARANOIA_CB_SKIP           6
  16. #define PARANOIA_CB_DRIFT          7
  17. #define PARANOIA_CB_BACKOFF        8
  18. #define PARANOIA_CB_OVERLAP        9
  19. #define PARANOIA_CB_FIXUP_DROPPED 10
  20. #define PARANOIA_CB_FIXUP_DUPED   11
  21. #define PARANOIA_CB_READERR       12
  22. #define PARANOIA_MODE_FULL        0xff
  23. #define PARANOIA_MODE_DISABLE     0
  24. #define PARANOIA_MODE_VERIFY      1
  25. #define PARANOIA_MODE_FRAGMENT    2
  26. #define PARANOIA_MODE_OVERLAP     4
  27. #define PARANOIA_MODE_SCRATCH     8
  28. #define PARANOIA_MODE_REPAIR      16
  29. #define PARANOIA_MODE_NEVERSKIP   32
  30. #ifndef CDP_COMPILE
  31. typedef void cdrom_paranoia;
  32. #endif
  33. #ifdef __cplusplus
  34. extern "C" {
  35. #endif
  36. extern cdrom_paranoia *paranoia_init(cdrom_drive *d);
  37. extern void paranoia_set_range(cdrom_paranoia *p, long start, long end);
  38. extern void paranoia_modeset(cdrom_paranoia *p,int mode);
  39. extern long paranoia_seek(cdrom_paranoia *p,long seek,int mode);
  40. extern size16 *paranoia_read(cdrom_paranoia *p,void(*callback)(long,int));
  41. extern void paranoia_free(cdrom_paranoia *p);
  42. extern void paranoia_overlapset(cdrom_paranoia *p,long overlap);
  43. #ifdef __cplusplus
  44. }
  45. #endif
  46. #endif