-int load_hwplugins(void);
-GSList *list_hwplugins(void);
-
-/* Generic device instances */
-struct sr_device_instance *sr_device_instance_new(int index,
- int status, const char *vendor, const char *model, const char *version);
-struct sr_device_instance *get_sr_device_instance(
- GSList *device_instances, int device_index);
-void sr_device_instance_free(struct sr_device_instance *sdi);
-
-/* USB-specific instances */
-struct usb_device_instance *usb_device_instance_new(uint8_t bus,
- uint8_t address, struct libusb_device_handle *hdl);
-void usb_device_instance_free(struct usb_device_instance *usb);
-
-/* Serial-specific instances */
-struct serial_device_instance *serial_device_instance_new(
- const char *port, int fd);
-void serial_device_instance_free(struct serial_device_instance *serial);
-
-int find_hwcap(int *capabilities, int hwcap);
-struct hwcap_option *find_hwcap_option(int hwcap);
-void source_remove(int fd);
-void source_add(int fd, int events, int timeout, receive_data_callback rcv_cb,
- void *user_data);
+SR_API GSList *sr_hw_list(void);
+SR_API int sr_hw_init(struct sr_device_plugin *plugin);
+SR_API gboolean sr_hw_has_hwcap(struct sr_device_plugin *plugin, int hwcap);
+SR_API struct sr_hwcap_option *sr_hw_hwcap_get(int hwcap);