- if (sr_device_has_hwcap(o->device, SR_HWCAP_SAMPLERATE)) {
- samplerate = *((uint64_t *) o->device->plugin->get_device_info(
- o->device->plugin_index, SR_DI_CUR_SAMPLERATE));
- if (!(frequency_s = sr_samplerate_string(samplerate))) {
- sr_warn("gnuplot out: %s: sr_samplerate_string failed",
- __func__);
- free(ctx->header);
- free(ctx);
+ if (sr_dev_has_hwcap(o->sdi, SR_HWCAP_SAMPLERATE)) {
+ o->sdi->driver->info_get(SR_DI_CUR_SAMPLERATE,
+ (const void **)&samplerate, o->sdi);
+ if (!(frequency_s = sr_samplerate_string(*samplerate))) {
+ sr_err("gnuplot out: %s: sr_samplerate_string failed",
+ __func__);
+ g_free(ctx->header);
+ g_free(ctx);