Revision: 75493
          http://sourceforge.net/p/brlcad/code/75493
Author:   starseeker
Date:     2020-04-21 15:25:36 +0000 (Tue, 21 Apr 2020)
Log Message:
-----------
Make the test function work more like dm_list_types

Modified Paths:
--------------
    brlcad/branches/dm-fb-merge/src/libdm/dm_plugins.c
    brlcad/branches/dm-fb-merge/src/libdm/tests/dm_test.c

Modified: brlcad/branches/dm-fb-merge/src/libdm/dm_plugins.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/dm_plugins.c  2020-04-21 15:24:32 UTC 
(rev 75492)
+++ brlcad/branches/dm-fb-merge/src/libdm/dm_plugins.c  2020-04-21 15:25:36 UTC 
(rev 75493)
@@ -75,8 +75,14 @@
 }
 
 void
-dm_list_backends()
+dm_list_backends(const char *separator)
 {
+    struct bu_vls *list;
+    BU_GET(list, struct bu_vls);
+    bu_vls_init(list);
+    bu_vls_trunc(list, 0);
+
+
     struct bu_ptbl plugins = BU_PTBL_INIT_ZERO;
     struct bu_ptbl handles = BU_PTBL_INIT_ZERO;
     int dm_cnt = dm_load_backends(&plugins, &handles);
@@ -85,9 +91,18 @@
        return;
     }
 
+    // We've got something, and may need a separator
+    struct bu_vls sep = BU_VLS_INIT_ZERO;
+    if (!separator) {
+       bu_vls_sprintf(&sep, " ");
+    } else {
+       bu_vls_sprintf(&sep, "%s", separator);
+    }
+
     for (size_t i = 0; i < BU_PTBL_LEN(&plugins); i++) {
        const struct dm *d = (const struct dm *)BU_PTBL_GET(&plugins, i);
-       bu_log("Have backend: %s\n", dm_get_name(d));
+       if (strlen(bu_vls_cstr(list)) > 0) bu_vls_printf(list, "%s", 
bu_vls_cstr(&sep));
+       bu_vls_printf(list, "%s", dm_get_name(d));
     }
     bu_ptbl_free(&plugins);
 
@@ -95,6 +110,10 @@
        bu_log("bu_dlclose failed to unload plugins.\n");
     }
     bu_ptbl_free(&handles);
+
+    bu_log("%s\n", bu_vls_cstr(list));
+    bu_vls_free(list);
+    BU_PUT(list, struct bu_vls);
 }
 
 /*

Modified: brlcad/branches/dm-fb-merge/src/libdm/tests/dm_test.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/tests/dm_test.c       2020-04-21 
15:24:32 UTC (rev 75492)
+++ brlcad/branches/dm-fb-merge/src/libdm/tests/dm_test.c       2020-04-21 
15:25:36 UTC (rev 75493)
@@ -31,7 +31,7 @@
 int
 main(int UNUSED(argc), const char **UNUSED(argv))
 {
-    dm_list_backends();
+    dm_list_backends(NULL);
     return 0;
 }
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to