Revision: 75436
          http://sourceforge.net/p/brlcad/code/75436
Author:   starseeker
Date:     2020-04-17 15:21:55 +0000 (Fri, 17 Apr 2020)
Log Message:
-----------
Stub in a png image callback - not properly generic, that needs a translation 
of this to libicv, but for now we just need to hide the details of dmo_get_png

Modified Paths:
--------------
    brlcad/branches/dm-fb-merge/include/dm.h
    brlcad/branches/dm-fb-merge/src/libdm/X/dm-X.c
    brlcad/branches/dm-fb-merge/src/libdm/dm-generic.c
    brlcad/branches/dm-fb-merge/src/libdm/glx/dm-ogl.c
    brlcad/branches/dm-fb-merge/src/libdm/include/calltable.h
    brlcad/branches/dm-fb-merge/src/libdm/null/dm-Null.c
    brlcad/branches/dm-fb-merge/src/libdm/osgl/dm-osgl.cpp
    brlcad/branches/dm-fb-merge/src/libdm/plot/dm-plot.c
    brlcad/branches/dm-fb-merge/src/libdm/postscript/dm-ps.c
    brlcad/branches/dm-fb-merge/src/libdm/qt/dm-qt.cpp
    brlcad/branches/dm-fb-merge/src/libdm/tk/dm-tk.c
    brlcad/branches/dm-fb-merge/src/libdm/txt/dm-txt.c
    brlcad/branches/dm-fb-merge/src/libdm/wgl/dm-wgl.c

Modified: brlcad/branches/dm-fb-merge/include/dm.h
===================================================================
--- brlcad/branches/dm-fb-merge/include/dm.h    2020-04-17 15:06:54 UTC (rev 
75435)
+++ brlcad/branches/dm-fb-merge/include/dm.h    2020-04-17 15:21:55 UTC (rev 
75436)
@@ -28,6 +28,8 @@
 
 #include "common.h"
 
+#include "png.h"
+
 #include "vmath.h"
 #include "bn.h"
 #include "raytrace.h"
@@ -289,6 +291,10 @@
 DM_EXPORT extern int dm_get_fb_visible(struct dm *dmp);
 DM_EXPORT extern int dm_set_fb_visible(struct dm *dmp, int is_fb_visible);
 
+// TODO - this should be using libicv rather than returning a PNG struct - 
right
+// now this just moving the guts of dmo_png_cmd behind the call table...
+DM_EXPORT extern png_structp dm_get_image(struct dm *dmp);
+
 /* TODO - dm_vp is supposed to go away, but until we figure it out
  * expose it here to allow dm hiding */
 DM_EXPORT extern fastf_t *dm_get_vp(struct dm *dmp);

Modified: brlcad/branches/dm-fb-merge/src/libdm/X/dm-X.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/X/dm-X.c      2020-04-17 15:06:54 UTC 
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/X/dm-X.c      2020-04-17 15:21:55 UTC 
(rev 75436)
@@ -1713,6 +1713,14 @@
     {"",    0, (char *)0,       0,                      
BU_STRUCTPARSE_FUNC_NULL, NULL, NULL}
 };
 
+int
+X_geometry_request(struct dm *dmp, int width, int height)
+{
+    if (!dmp) return -1;
+    Tk_GeometryRequest(((struct dm_Xvars *)dmp->i->dm_vars.pub_vars)->xtkwin, 
width, height);
+    return 0;
+}
+
 #define XVARS_MV_O(_m) offsetof(struct dm_Xvars, _m)
 
 struct bu_structparse dm_Xvars_vparse[] = {
@@ -1785,8 +1793,9 @@
     X_openFb,
     NULL,
     NULL,
+    X_geometry_request,
+    X_internal_var,
     NULL,
-    NULL,
     0,
     0,                         /* no displaylist */
     0,                            /* no stereo */

Modified: brlcad/branches/dm-fb-merge/src/libdm/dm-generic.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/dm-generic.c  2020-04-17 15:06:54 UTC 
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/dm-generic.c  2020-04-17 15:21:55 UTC 
(rev 75436)
@@ -36,7 +36,6 @@
 #include "dm.h"
 #include "rt/solid.h"
 #include "./include/private.h"
-#include "./include/dm_xvars.h"
 #include "./null/dm-Null.h"
 
 extern struct dm *plot_open(void *interp, int argc, const char *argv[]);
@@ -188,6 +187,15 @@
     }
 }
 
+png_structp
+dm_get_image(struct dm *dmp)
+{
+    if (!dmp || !dmp->i->dm_get_image) return NULL;
+    return dmp->i->dm_get_image(dmp);
+}
+
+/* Properly generic functions */
+
 void
 dm_geometry_request(struct dm *dmp, int width, int height)
 {
@@ -202,7 +210,6 @@
     (void)dmp->i->dm_internal_var(result, dmp, key);
 }
 
-/* Properly generic function */
 
 fastf_t
 dm_Xx2Normal(struct dm *dmp, int x)

Modified: brlcad/branches/dm-fb-merge/src/libdm/glx/dm-ogl.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/glx/dm-ogl.c  2020-04-17 15:06:54 UTC 
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/glx/dm-ogl.c  2020-04-17 15:21:55 UTC 
(rev 75436)
@@ -2665,6 +2665,7 @@
     ogl_put_internal,
     ogl_geometry_request,
     ogl_internal_var,
+    NULL,
     0,
     1,                         /* has displaylist */
     0,                          /* no stereo by default */

Modified: brlcad/branches/dm-fb-merge/src/libdm/include/calltable.h
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/include/calltable.h   2020-04-17 
15:06:54 UTC (rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/include/calltable.h   2020-04-17 
15:21:55 UTC (rev 75436)
@@ -34,6 +34,8 @@
 #ifndef DM_CALLTABLE_H
 #define DM_CALLTABLE_H
 
+#include "png.h"
+
 #include "bu/parse.h"
 #include "bu/vls.h"
 #include "dm.h"
@@ -94,6 +96,7 @@
     int (*dm_put_internal)(struct dm *dmp);
     int (*dm_geometry_request)(struct dm *dmp, int width, int height);
     int (*dm_internal_var)(struct bu_vls *result, struct dm *dmp, const char 
*key);
+    png_structp (*dm_get_image)(struct dm *dmp);
     unsigned long dm_id;          /**< @brief window id */
     int dm_displaylist;                /**< @brief !0 means device has 
displaylist */
     int dm_stereo;                /**< @brief stereo flag */

Modified: brlcad/branches/dm-fb-merge/src/libdm/null/dm-Null.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/null/dm-Null.c        2020-04-17 
15:06:54 UTC (rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/null/dm-Null.c        2020-04-17 
15:21:55 UTC (rev 75436)
@@ -326,6 +326,7 @@
     NULL,
     NULL,
     NULL,
+    NULL,
     0,
     0,                         /* no displaylist */
     0,                         /* no stereo */

Modified: brlcad/branches/dm-fb-merge/src/libdm/osgl/dm-osgl.cpp
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/osgl/dm-osgl.cpp      2020-04-17 
15:06:54 UTC (rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/osgl/dm-osgl.cpp      2020-04-17 
15:21:55 UTC (rev 75436)
@@ -2560,6 +2560,7 @@
     osgl_put_internal,
     osgl_geometry_request,
     osgl_internal_var,
+    NULL,
     0,
     1,                         /* has displaylist */
     0,                          /* no stereo by default */

Modified: brlcad/branches/dm-fb-merge/src/libdm/plot/dm-plot.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/plot/dm-plot.c        2020-04-17 
15:06:54 UTC (rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/plot/dm-plot.c        2020-04-17 
15:21:55 UTC (rev 75436)
@@ -571,6 +571,7 @@
     NULL,
     NULL,
     NULL,
+    NULL,
     0,
     0,                         /* no displaylist */
     0,                         /* no stereo */

Modified: brlcad/branches/dm-fb-merge/src/libdm/postscript/dm-ps.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/postscript/dm-ps.c    2020-04-17 
15:06:54 UTC (rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/postscript/dm-ps.c    2020-04-17 
15:21:55 UTC (rev 75436)
@@ -541,6 +541,7 @@
     NULL,
     NULL,
     NULL,
+    NULL,
     0,
     0,                         /* no displaylist */
     0,                            /* no stereo */

Modified: brlcad/branches/dm-fb-merge/src/libdm/qt/dm-qt.cpp
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/qt/dm-qt.cpp  2020-04-17 15:06:54 UTC 
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/qt/dm-qt.cpp  2020-04-17 15:21:55 UTC 
(rev 75436)
@@ -1067,6 +1067,7 @@
     NULL,
     qt_geometry_request,
     qt_internal_var,
+    NULL,
     0,
     0,                         /* no displaylist */
     0,                         /* no stereo */

Modified: brlcad/branches/dm-fb-merge/src/libdm/tk/dm-tk.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/tk/dm-tk.c    2020-04-17 15:06:54 UTC 
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/tk/dm-tk.c    2020-04-17 15:21:55 UTC 
(rev 75436)
@@ -931,6 +931,7 @@
     NULL,
     tk_geometry_request,
     tk_internal_var,
+    NULL,
     0,
     0,                         /* no displaylist */
     0,                         /* no stereo */

Modified: brlcad/branches/dm-fb-merge/src/libdm/txt/dm-txt.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/txt/dm-txt.c  2020-04-17 15:06:54 UTC 
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/txt/dm-txt.c  2020-04-17 15:21:55 UTC 
(rev 75436)
@@ -382,6 +382,7 @@
     NULL,
     NULL,
     NULL,
+    NULL,
     0,
     0,                         /* no displaylist */
     0,                         /* no stereo */

Modified: brlcad/branches/dm-fb-merge/src/libdm/wgl/dm-wgl.c
===================================================================
--- brlcad/branches/dm-fb-merge/src/libdm/wgl/dm-wgl.c  2020-04-17 15:06:54 UTC 
(rev 75435)
+++ brlcad/branches/dm-fb-merge/src/libdm/wgl/dm-wgl.c  2020-04-17 15:21:55 UTC 
(rev 75436)
@@ -2208,6 +2208,7 @@
     wgl_put_internal,
     wgl_geometry_request,
     wgl_internal_var,
+    NULL,
     0,
     1,                         /* has displaylist */
     0,                          /* no stereo by default */

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