]> sigrok.org Git - libsigrok.git/blobdiff - hwplugin.c
Change SIGROK_ prefix to SR_.
[libsigrok.git] / hwplugin.c
index 0a30aad0016263f5ecc0012ba6f0f7fb6c731ccd..a826cd9eb8ef768ea2a11ee6b56b5259781b9fef 100644 (file)
@@ -26,9 +26,6 @@
 #include <sigrok.h>
 #include "config.h"
 
-source_callback_add source_cb_add = NULL;
-source_callback_remove source_cb_remove = NULL;
-
 /* The list of loaded plugins lives here. */
 GSList *plugins;
 
@@ -61,6 +58,10 @@ extern struct device_plugin asix_sigma_plugin_info;
 #ifdef HAVE_LA_LINK_MSO19
 extern struct device_plugin link_mso19_plugin_info;
 #endif
+#ifdef HAVE_LA_ALSA
+extern struct device_plugin alsa_plugin_info;
+#endif
+
 
 /* TODO: No linked list needed, this can be a simple array. */
 int load_hwplugins(void)
@@ -85,8 +86,12 @@ int load_hwplugins(void)
 #ifdef HAVE_LA_LINK_MSO19
        plugins = g_slist_append(plugins, (gpointer *)&link_mso19_plugin_info);
 #endif
+#ifdef HAVE_LA_ALSA
+       plugins = g_slist_append(plugins, (gpointer *)&alsa_plugin_info);
+#endif
+
 
-       return SIGROK_OK;
+       return SR_OK;
 }
 
 GSList *list_hwplugins(void)
@@ -216,15 +221,19 @@ struct hwcap_option *find_hwcap_option(int hwcap)
        return NULL;
 }
 
+/* unnecessary level of indirection follows. */
+
 void source_remove(int fd)
 {
-       if (source_cb_remove)
-               source_cb_remove(fd);
+
+       session_source_remove(fd);
+
 }
 
 void source_add(int fd, int events, int timeout, receive_data_callback rcv_cb,
                void *user_data)
 {
-       if (source_cb_add)
-               source_cb_add(fd, events, timeout, rcv_cb, user_data);
+
+       session_source_add(fd, events, timeout, rcv_cb, user_data);
+
 }