-void sr_device_scan(void);
-int sr_device_plugin_init(struct sr_device_plugin *plugin);
-void sr_device_close_all(void);
-GSList *sr_device_list(void);
-struct sr_device *sr_device_new(struct sr_device_plugin *plugin,
- int plugin_index, int num_probes);
-void sr_device_clear(struct sr_device *device);
-void sr_device_destroy(struct sr_device *dev);
-
-void sr_device_probe_clear(struct sr_device *device, int probenum);
-void sr_device_probe_add(struct sr_device *device, char *name);
-struct sr_probe *sr_device_probe_find(struct sr_device *device, int probenum);
-void sr_device_probe_name(struct sr_device *device, int probenum, char *name);
-
-void sr_device_trigger_clear(struct sr_device *device);
-void sr_device_trigger_set(struct sr_device *device, int probenum,
- char *trigger);
-gboolean sr_device_has_hwcap(struct sr_device *device, int hwcap);
+SR_API int sr_device_scan(void);
+SR_API GSList *sr_device_list(void);
+SR_API struct sr_device *sr_device_new(const struct sr_device_plugin *plugin,
+ int plugin_index);
+SR_API int sr_device_clear(struct sr_device *device);
+SR_API int sr_device_probe_clear(struct sr_device *device, int probenum);
+SR_API int sr_device_probe_add(struct sr_device *device, const char *name);
+SR_API struct sr_probe *sr_device_probe_find(const struct sr_device *device,
+ int probenum);
+SR_API int sr_device_probe_name(struct sr_device *device, int probenum,
+ const char *name);
+SR_API int sr_device_trigger_clear(struct sr_device *device);
+SR_API int sr_device_trigger_set(struct sr_device *device, int probenum,
+ const char *trigger);
+SR_API gboolean sr_device_has_hwcap(const struct sr_device *device, int hwcap);
+SR_API int sr_device_get_info(const struct sr_device *device, int id,
+ const void **data);