diff --git a/example_bass/.gitignore b/example_bass/.gitignore new file mode 100644 index 0000000..3306179 --- /dev/null +++ b/example_bass/.gitignore @@ -0,0 +1 @@ +*.track diff --git a/example_bass/example_bass.cpp b/example_bass/example_bass.cpp index 48420dd..efdd3b1 100644 --- a/example_bass/example_bass.cpp +++ b/example_bass/example_bass.cpp @@ -194,6 +194,11 @@ int main(int argc, char *argv[]) } } +#ifndef SYNC_PLAYER + sync_save_tracks(rocket); +#endif + sync_destroy_device(rocket); + BASS_StreamFree(stream); BASS_Free(); diff --git a/sync/device.c b/sync/device.c index e6318d7..320c08d 100644 --- a/sync/device.c +++ b/sync/device.c @@ -155,12 +155,12 @@ static int save_track(const struct sync_track *t, const char *path) return 0; } -static void save_tracks(const char *base, struct sync_data *data) +void sync_save_tracks(const struct sync_device *d) { int i; - for (i = 0; i < (int)data->num_tracks; ++i) { - const struct sync_track *t = data->tracks[i]; - save_track(t, sync_track_path(base, t->name)); + for (i = 0; i < (int)d->data.num_tracks; ++i) { + const struct sync_track *t = d->data.tracks[i]; + save_track(t, sync_track_path(d->base, t->name)); } } @@ -282,7 +282,7 @@ int sync_update(struct sync_device *d, int row) d->cb->pause(d->cb_param, flag); break; case SAVE_TRACKS: - save_tracks(d->base, &d->data); + sync_save_tracks(d); break; default: fprintf(stderr, "unknown cmd: %02x\n", cmd); diff --git a/sync/sync.h b/sync/sync.h index d571ec1..8e09bf9 100644 --- a/sync/sync.h +++ b/sync/sync.h @@ -25,6 +25,7 @@ void sync_set_callbacks(struct sync_device *, struct sync_cb *, void *); #define SYNC_DEFAULT_PORT 1338 int sync_connect(struct sync_device *, const char *, unsigned short); int sync_update(struct sync_device *, int); +void sync_save_tracks(const struct sync_device *); #endif /* !defined(SYNC_PLAYER) */ const struct sync_track *sync_get_track(struct sync_device *, const char *);