Revision: 76573
          http://sourceforge.net/p/brlcad/code/76573
Author:   starseeker
Date:     2020-07-29 17:03:44 +0000 (Wed, 29 Jul 2020)
Log Message:
-----------
Start trying to get an overall view of what callbacks we have defined

Modified Paths:
--------------
    brlcad/branches/bioh/include/ged/defines.h

Modified: brlcad/branches/bioh/include/ged/defines.h
===================================================================
--- brlcad/branches/bioh/include/ged/defines.h  2020-07-29 15:38:47 UTC (rev 
76572)
+++ brlcad/branches/bioh/include/ged/defines.h  2020-07-29 17:03:44 UTC (rev 
76573)
@@ -35,6 +35,7 @@
 #include "bu/vls.h"
 #include "dm/bview.h"
 #include "rt/search.h"
+#include "rt/solid.h"
 
 __BEGIN_DECLS
 
@@ -77,17 +78,23 @@
 
 #define GED_RESULT_NULL ((void *)0)
 
+/* Forward declaration */
+struct ged;
+
+typedef int (*ged_func_ptr)(struct ged *, int, const char *[]);
 #define GED_FUNC_PTR_NULL ((ged_func_ptr)0)
 
-
 /* Callback related definitions */
+typedef void (*ged_io_handler_callback_t)(void *, int);
+typedef void (*ged_refresh_callback_ptr)(void *);
+typedef void (*ged_create_vlist_solid_callback_ptr)(struct solid *);
+typedef void (*ged_create_vlist_callback_ptr)(struct display_list *);
+typedef void (*ged_free_vlist_callback_ptr)(unsigned int, int);
 #define GED_REFRESH_CALLBACK_PTR_NULL ((ged_refresh_callback_ptr)0)
 #define GED_CREATE_VLIST_SOLID_CALLBACK_PTR_NULL 
((ged_create_vlist_solid_callback_ptr)0)
 #define GED_CREATE_VLIST_CALLBACK_PTR_NULL ((ged_create_vlist_callback_ptr)0)
 #define GED_FREE_VLIST_CALLBACK_PTR_NULL ((ged_free_vlist_callback_ptr)0)
-typedef void (*ged_io_handler_callback_t)(void *, int);
 
-
 /**
  * Definition of global parallel-processing semaphores.
  *
@@ -224,9 +231,6 @@
 
     struct ged_subprocess      gd_headSubprocess; /**< @brief  head of forked 
processes */
 
-    void *ged_interp; /* Temporary - do not rely on when designing new 
functionality */
-    db_search_callback_t ged_interp_eval; /* FIXME: broke the rule written on 
the previous line */
-
     /* Interface to LIBDM */
     void *ged_dmp;
 
@@ -240,18 +244,22 @@
     void                       (*ged_create_vlist_callback)(struct 
display_list *);    /**< @brief  function to call after all vlist created that 
loops through creating display list for each solid  */
     void                       (*ged_free_vlist_callback)(unsigned int, int);  
/**< @brief  function to call after freeing a vlist */
 
+    void *ged_interp; /* Temporary - do not rely on when designing new 
functionality */
+    db_search_callback_t ged_interp_eval; /* FIXME: broke the rule written on 
the previous line */
+
     /* Handler functions for I/O communication with asynchronous subprocess 
commands */
     int io_mode;
     void (*ged_create_io_handler)(void **chan, struct bu_process *p, int fd, 
int mode, void *data, ged_io_handler_callback_t callback);
     void (*ged_delete_io_handler)(void *interp, void *chan, struct bu_process 
*p, int fd, void *data, ged_io_handler_callback_t callback);
+
+    // Other callbacks...
+    // ged_dm_view: gdv_callback, gdv_edit_motion_delta_callback
+    // ged_obj: go_more_args_callback, go_rt_end_callback
+    // fbserv_obj: fbs_callback
+    // bview.h gv_callback, vo_callback
+    // db_search_callback_t
 };
 
-typedef int (*ged_func_ptr)(struct ged *, int, const char *[]);
-typedef void (*ged_refresh_callback_ptr)(void *);
-typedef void (*ged_create_vlist_solid_callback_ptr)(struct solid *);
-typedef void (*ged_create_vlist_callback_ptr)(struct display_list *);
-typedef void (*ged_free_vlist_callback_ptr)(unsigned int, int);
-
 /* accessor functions for ged_results - calling
  * applications should not work directly with the
  * internals of ged_results, which are not guaranteed

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