+int sr_datastore_new(int unitsize, struct sr_datastore **ds);
+int sr_datastore_destroy(struct sr_datastore *ds);
+int sr_datastore_put(struct sr_datastore *ds, void *data, unsigned int length,
+ int in_unitsize, int *probelist);
+
+/*--- device.c --------------------------------------------------------------*/
+
+int sr_device_scan(void);
+GSList *sr_device_list(void);
+struct sr_device *sr_device_new(const struct sr_device_plugin *plugin,
+ int plugin_index, int num_probes);
+int sr_device_clear(struct sr_device *device);
+int sr_device_probe_clear(struct sr_device *device, int probenum);
+int sr_device_probe_add(struct sr_device *device, const char *name);
+struct sr_probe *sr_device_probe_find(const struct sr_device *device,
+ int probenum);
+int sr_device_probe_name(struct sr_device *device, int probenum,
+ const char *name);
+int sr_device_trigger_clear(struct sr_device *device);
+int sr_device_trigger_set(struct sr_device *device, int probenum,
+ const char *trigger);
+gboolean sr_device_has_hwcap(const struct sr_device *device, int hwcap);
+
+/*--- filter.c --------------------------------------------------------------*/
+
+int sr_filter_probes(int in_unitsize, int out_unitsize, const int *probelist,
+ const unsigned char *data_in, uint64_t length_in,
+ char **data_out, uint64_t *length_out);
+
+/*--- hwplugin.c ------------------------------------------------------------*/
+
+GSList *sr_list_hwplugins(void);
+int sr_init_hwplugins(struct sr_device_plugin *plugin);
+void sr_cleanup_hwplugins(void);