diff --git a/doc/libcdio.texi b/doc/libcdio.texi index b63ce82c..f450399f 100644 --- a/doc/libcdio.texi +++ b/doc/libcdio.texi @@ -1231,7 +1231,7 @@ device that is right for it. 5: main(int argc, const char *argv[]) 6: @{ 7: CdIo_t *p_cdio = cdio_open (NULL, DRIVER_DEVICE); - 8: driver_id_t driver_id; + 8: const driver_id_t *driver_id_p; 9: 10: if (NULL != p_cdio) @{ 11: printf("The driver selected is %s\n", cdio_get_driver_name(p_cdio)); @@ -1242,11 +1242,11 @@ device that is right for it. 16: printf("Problem in trying to find a driver.\n\n"); 17: @} 18: -19: for (driver_id=CDIO_MIN_DRIVER; driver_id<=CDIO_MAX_DRIVER; driver_id++) -20: if (cdio_have_driver(driver_id)) -21: printf("We have: %s\n", cdio_driver_describe(driver_id)); +19: for (driver_id_p=cdio_drivers; *driver_id_p!=DRIVER_UNKNOWN; driver_id_p++) +20: if (cdio_have_driver(*driver_id_p)) +21: printf("We have: %s\n", cdio_driver_describe(*driver_id_p)); 22: else -23: printf("We don't have: %s\n", cdio_driver_describe(driver_id)); +23: printf("We don't have: %s\n", cdio_driver_describe(*driver_id_p)); 24: return 0; 25: @} @end smallexample diff --git a/example/C++/OO/device.cpp b/example/C++/OO/device.cpp index 37fcbf22..e4580ec5 100644 --- a/example/C++/OO/device.cpp +++ b/example/C++/OO/device.cpp @@ -125,12 +125,12 @@ main(int argc, const char *argv[]) } { - driver_id_t driver_id; - for (driver_id=CDIO_MIN_DRIVER; driver_id<=CDIO_MAX_DRIVER; driver_id++) - if (cdio_have_driver(driver_id)) - printf("We have: %s\n", cdio_driver_describe(driver_id)); + const driver_id_t *driver_id_p; + for (driver_id_p=cdio_drivers; *driver_id_p!=DRIVER_UNKNOWN; driver_id_p++) + if (cdio_have_driver(*driver_id_p)) + printf("We have: %s\n", cdio_driver_describe(*driver_id_p)); else - printf("We don't have: %s\n", cdio_driver_describe(driver_id)); + printf("We don't have: %s\n", cdio_driver_describe(*driver_id_p)); } return 0; diff --git a/example/C++/device.cpp b/example/C++/device.cpp index 75b59bcd..45c4f1bc 100644 --- a/example/C++/device.cpp +++ b/example/C++/device.cpp @@ -97,17 +97,11 @@ print_drive_capabilities(cdio_drive_read_cap_t i_read_cap, } } -inline -driver_id_t &operator++(driver_id_t &d) -{ - return d = driver_id_t(d + 1); -} - int main(int argc, const char *argv[]) { CdIo_t *p_cdio = cdio_open (NULL, DRIVER_UNKNOWN); - driver_id_t driver_id; + const driver_id_t *driver_id_p; if (NULL != p_cdio) { char *default_device = cdio_get_default_device(p_cdio); @@ -131,10 +125,10 @@ main(int argc, const char *argv[]) printf("Problem in trying to find a driver.\n\n"); } - for (driver_id=CDIO_MIN_DRIVER; driver_id<=CDIO_MAX_DRIVER; ++driver_id) - if (cdio_have_driver(driver_id)) - printf("We have: %s\n", cdio_driver_describe(driver_id)); + for (driver_id_p=cdio_drivers; *driver_id_p!=DRIVER_UNKNOWN; ++driver_id_p) + if (cdio_have_driver(*driver_id_p)) + printf("We have: %s\n", cdio_driver_describe(*driver_id_p)); else - printf("We don't have: %s\n", cdio_driver_describe(driver_id)); + printf("We don't have: %s\n", cdio_driver_describe(*driver_id_p)); return 0; } diff --git a/example/device.c b/example/device.c index 6a7b8f8e..09ce2d03 100644 --- a/example/device.c +++ b/example/device.c @@ -124,12 +124,12 @@ main(int argc, const char *argv[]) } { - driver_id_t driver_id; - for (driver_id=CDIO_MIN_DRIVER; driver_id<=CDIO_MAX_DRIVER; driver_id++) - if (cdio_have_driver(driver_id)) - printf("We have: %s\n", cdio_driver_describe(driver_id)); + const driver_id_t *driver_id_p; + for (driver_id_p=cdio_drivers; *driver_id_p!=DRIVER_UNKNOWN; driver_id_p++) + if (cdio_have_driver(*driver_id_p)) + printf("We have: %s\n", cdio_driver_describe(*driver_id_p)); else - printf("We don't have: %s\n", cdio_driver_describe(driver_id)); + printf("We don't have: %s\n", cdio_driver_describe(*driver_id_p)); } return 0; } diff --git a/src/cd-drive.c b/src/cd-drive.c index 3f57cfe3..1b66677c 100644 --- a/src/cd-drive.c +++ b/src/cd-drive.c @@ -270,12 +270,12 @@ main(int argc, char *argv[]) /* Print out a drivers available */ { - driver_id_t driver_id; + const driver_id_t *driver_id_p; printf("Drivers available...\n"); - for (driver_id=CDIO_MIN_DRIVER; driver_id<=CDIO_MAX_DRIVER; driver_id++) - if (cdio_have_driver(driver_id)) { - printf(" %-35s\n", cdio_driver_describe(driver_id)); + for (driver_id_p=cdio_drivers; *driver_id_p!=DRIVER_UNKNOWN; driver_id_p++) + if (cdio_have_driver(*driver_id_p)) { + printf(" %-35s\n", cdio_driver_describe(*driver_id_p)); } printf("\n"); } diff --git a/src/util.c b/src/util.c index 09264e2c..bfaca828 100644 --- a/src/util.c +++ b/src/util.c @@ -45,8 +45,6 @@ print_version (char *program_name, const char *version, int no_header, bool version_only) { - driver_id_t driver_id; - if (no_header == 0) report( stdout, "%s version %s\nCopyright (c) 2003, 2004, 2005, 2007, 2008 R. Bernstein\n", @@ -59,9 +57,10 @@ PARTICULAR PURPOSE.\n\ if (version_only) { char *default_device; - for (driver_id=DRIVER_UNKNOWN+1; driver_id<=CDIO_MAX_DRIVER; driver_id++) { - if (cdio_have_driver(driver_id)) { - report( stdout, "Have driver: %s\n", cdio_driver_describe(driver_id)); + const driver_id_t *driver_id_p; + for (driver_id_p=cdio_drivers; *driver_id_p!=DRIVER_UNKNOWN; driver_id_p++) { + if (cdio_have_driver(*driver_id_p)) { + report( stdout, "Have driver: %s\n", cdio_driver_describe(*driver_id_p)); } } default_device=cdio_get_default_device(NULL);