Revision: 44695
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=44695
Author:   nicholasbishop
Date:     2012-03-07 04:41:14 +0000 (Wed, 07 Mar 2012)
Log Message:
-----------
Code cleanup: use typedefs for DerivedMesh drawing callbacks.

There are still fairly bewildering set of callbacks being tossed
around, but it's at least a little less verbose now.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/BKE_DerivedMesh.h
    trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c
    trunk/blender/source/blender/blenkernel/intern/editderivedmesh.c
    trunk/blender/source/blender/blenkernel/intern/subsurf_ccg.c
    trunk/blender/source/blender/blenlib/intern/pbvh.c
    trunk/blender/source/blender/gpu/GPU_buffers.h
    trunk/blender/source/blender/gpu/intern/gpu_buffers.c

Modified: trunk/blender/source/blender/blenkernel/BKE_DerivedMesh.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_DerivedMesh.h   2012-03-07 
04:20:30 UTC (rev 44694)
+++ trunk/blender/source/blender/blenkernel/BKE_DerivedMesh.h   2012-03-07 
04:41:14 UTC (rev 44695)
@@ -124,6 +124,14 @@
        DM_TYPE_CCGDM
 } DerivedMeshType;
 
+/* Drawing callback types */
+typedef int (*DMSetMaterial)(int mat_nr, void *attribs);
+typedef int (*DMCompareDrawOptions)(void *userData, int cur_index, int 
next_index);
+typedef void (*DMSetDrawInterpOptions)(void *userData, int index, float t);
+typedef int (*DMSetDrawOptions)(void *userData, int index);
+typedef int (*DMSetDrawOptionsTex)(struct MTFace *tface, int has_vcol, int 
matnr);
+typedef int (*DMSetDrawOptionsShading)(void *userData, int index, int 
*drawSmooth_r);
+
 typedef struct DerivedMesh DerivedMesh;
 struct DerivedMesh {
        /* Private DerivedMesh data, only for internal DerivedMesh use */
@@ -308,25 +316,21 @@
         * Also called for *final* editmode DerivedMeshes
         */
        void (*drawFacesSolid)(DerivedMesh *dm, float 
(*partial_redraw_planes)[4],
-                                                  int fast, int 
(*setMaterial)(int, void *attribs));
+                                                  int fast, DMSetMaterial 
setMaterial);
 
        /* Draw all faces using MTFace 
         *  o Drawing options too complicated to enumerate, look at code.
         */
        void (*drawFacesTex)(DerivedMesh *dm,
-                            int (*setDrawOptions)(struct MTFace *tface,
-                            int has_vcol, int matnr),
-                                               int (*compareDrawOptions)(void 
*userData,
-                                                        int cur_index,
-                                                        int next_index),
-                                               void *userData);
+                            DMSetDrawOptionsTex setDrawOptions,
+                                                DMCompareDrawOptions 
compareDrawOptions,
+                                                void *userData);
 
        /* Draw all faces with GLSL materials
         *  o setMaterial is called for every different material nr
         *  o Only if setMaterial returns true
         */
-       void (*drawFacesGLSL)(DerivedMesh *dm,
-               int (*setMaterial)(int, void *attribs));
+       void (*drawFacesGLSL)(DerivedMesh *dm, DMSetMaterial setMaterial);
 
        /* Draw mapped faces (no color, or texture)
         *  o Only if !setDrawOptions or
@@ -342,23 +346,17 @@
         * smooth shaded.
         */
        void (*drawMappedFaces)(DerivedMesh *dm,
-                                                       int 
(*setDrawOptions)(void *userData, int index,
-                                                                               
                  int *drawSmooth_r),
-                                                       int (*setMaterial)(int, 
void *attribs),
-                                                       int 
(*compareDrawOptions)(void *userData,
-                                                                               
  int cur_index,
-                                                                               
  int next_index),
+                                                       DMSetDrawOptionsShading 
setDrawOptions,
+                                                       DMSetMaterial 
setMaterial,
+                                                       DMCompareDrawOptions 
compareDrawOptions,
                                                        void *userData, int 
useColors);
 
        /* Draw mapped faces using MTFace 
         *  o Drawing options too complicated to enumerate, look at code.
         */
        void (*drawMappedFacesTex)(DerivedMesh *dm,
-                                                          int 
(*setDrawOptions)(void *userData,
-                                                                               
                         int index),
-                                                          int 
(*compareDrawOptions)(void *userData,
-                                                                               
     int cur_index,
-                                                                               
     int next_index),
+                                                          DMSetDrawOptions 
setDrawOptions,
+                                                          DMCompareDrawOptions 
compareDrawOptions,
                                                           void *userData);
 
        /* Draw mapped faces with GLSL materials
@@ -367,8 +365,8 @@
         *  o Only if setMaterial and setDrawOptions return true
         */
        void (*drawMappedFacesGLSL)(DerivedMesh *dm,
-               int (*setMaterial)(int, void *attribs),
-               int (*setDrawOptions)(void *userData, int index),
+               DMSetMaterial setMaterial,
+               DMSetDrawOptions setDrawOptions,
                void *userData);
 
        /* Draw mapped edges as lines
@@ -376,7 +374,7 @@
         *    returns true
         */
        void (*drawMappedEdges)(DerivedMesh *dm,
-                                                       int 
(*setDrawOptions)(void *userData, int index),
+                                                       DMSetDrawOptions 
setDrawOptions,
                                                        void *userData);
 
        /* Draw mapped edges as lines with interpolation values
@@ -387,11 +385,8 @@
         * NOTE: This routine is optional!
         */
        void (*drawMappedEdgesInterp)(DerivedMesh *dm, 
-                                                                 int 
(*setDrawOptions)(void *userData,
-                                                                               
                                int index), 
-                                                                 void 
(*setDrawInterpOptions)(void *userData,
-                                                                               
                                           int index,
-                                                                               
                                           float t),
+                                                                 
DMSetDrawOptions setDrawOptions,
+                                                                 
DMSetDrawInterpOptions setDrawInterpOptions,
                                                                  void 
*userData);
 
        /* Draw all faces with materials

Modified: trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c      
2012-03-07 04:20:30 UTC (rev 44694)
+++ trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c      
2012-03-07 04:41:14 UTC (rev 44695)
@@ -505,7 +505,7 @@
 
 static void cdDM_drawFacesSolid(DerivedMesh *dm,
                                float (*partial_redraw_planes)[4],
-                               int UNUSED(fast), int (*setMaterial)(int, void 
*attribs))
+                               int UNUSED(fast), DMSetMaterial setMaterial)
 {
        CDDerivedMesh *cddm = (CDDerivedMesh*) dm;
        MVert *mvert = cddm->mvert;
@@ -600,9 +600,9 @@
 }
 
 static void cdDM_drawFacesTex_common(DerivedMesh *dm,
-                          int (*drawParams)(MTFace *tface, int has_mcol, int 
matnr),
-                          int (*drawParamsMapped)(void *userData, int index),
-                          int (*compareDrawOptions)(void *userData, int 
cur_index, int next_index),
+                          DMSetDrawOptionsTex drawParams,
+                          DMSetDrawOptions drawParamsMapped,
+                          DMCompareDrawOptions compareDrawOptions,
                           void *userData) 
 {
        CDDerivedMesh *cddm = (CDDerivedMesh*) dm;
@@ -788,17 +788,17 @@
 }
 
 static void cdDM_drawFacesTex(DerivedMesh *dm,
-                          int (*setDrawOptions)(MTFace *tface, int has_mcol, 
int matnr),
-                          int (*compareDrawOptions)(void *userData, int 
cur_index, int next_index),
+                          DMSetDrawOptionsTex setDrawOptions,
+                          DMCompareDrawOptions compareDrawOptions,
                           void *userData)
 {
        cdDM_drawFacesTex_common(dm, setDrawOptions, NULL, compareDrawOptions, 
userData);
 }
 
 static void cdDM_drawMappedFaces(DerivedMesh *dm,
-                       int (*setDrawOptions)(void *userData, int index, int 
*drawSmooth_r),
-                       int (*setMaterial)(int, void *attribs),
-                       int (*compareDrawOptions)(void *userData, int 
cur_index, int next_index),
+                       DMSetDrawOptionsShading setDrawOptions,
+                       DMSetMaterial setMaterial,
+                       DMCompareDrawOptions compareDrawOptions,
                        void *userData, int useColors)
 {
        CDDerivedMesh *cddm = (CDDerivedMesh*) dm;
@@ -961,8 +961,8 @@
 }
 
 static void cdDM_drawMappedFacesTex(DerivedMesh *dm,
-                          int (*setDrawOptions)(void *userData, int index),
-                          int (*compareDrawOptions)(void *userData, int 
cur_index, int next_index),
+                          DMSetDrawOptions setDrawOptions,
+                          DMCompareDrawOptions compareDrawOptions,
                           void *userData)
 {
        cdDM_drawFacesTex_common(dm, NULL, setDrawOptions, compareDrawOptions, 
userData);
@@ -1013,8 +1013,8 @@
 }
 
 static void cdDM_drawMappedFacesGLSL(DerivedMesh *dm,
-                          int (*setMaterial)(int, void *attribs),
-                          int (*setDrawOptions)(void *userData, int index),
+                          DMSetMaterial setMaterial,
+                          DMSetDrawOptions setDrawOptions,
                           void *userData)
 {
        CDDerivedMesh *cddm = (CDDerivedMesh*) dm;
@@ -1302,7 +1302,7 @@
        glShadeModel(GL_FLAT);
 }
 
-static void cdDM_drawFacesGLSL(DerivedMesh *dm,int (*setMaterial)(int, void 
*attribs))
+static void cdDM_drawFacesGLSL(DerivedMesh *dm, DMSetMaterial setMaterial)
 {
        dm->drawMappedFacesGLSL(dm, setMaterial, NULL, NULL);
 }
@@ -1386,7 +1386,7 @@
        glShadeModel(GL_FLAT);
 }
 
-static void cdDM_drawMappedEdges(DerivedMesh *dm, int (*setDrawOptions)(void 
*userData, int index), void *userData)
+static void cdDM_drawMappedEdges(DerivedMesh *dm, DMSetDrawOptions 
setDrawOptions, void *userData)
 {
        CDDerivedMesh *cddm = (CDDerivedMesh*) dm;
        MVert *vert = cddm->mvert;

Modified: trunk/blender/source/blender/blenkernel/intern/editderivedmesh.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/editderivedmesh.c    
2012-03-07 04:20:30 UTC (rev 44694)
+++ trunk/blender/source/blender/blenkernel/intern/editderivedmesh.c    
2012-03-07 04:41:14 UTC (rev 44695)
@@ -399,7 +399,7 @@
 
 static void emDM_drawMappedEdges(
                DerivedMesh *dm,
-               int (*setDrawOptions)(void *userData, int index),
+               DMSetDrawOptions setDrawOptions,
                void *userData)
 {
        EditDerivedBMesh *bmdm= (EditDerivedBMesh*) dm;
@@ -443,8 +443,8 @@
 
 static void emDM_drawMappedEdgesInterp(
                DerivedMesh *dm,
-               int (*setDrawOptions)(void *userData, int index),
-               void (*setDrawInterpOptions)(void *userData, int index, float 
t),
+               DMSetDrawOptions setDrawOptions,
+               DMSetDrawInterpOptions setDrawInterpOptions,
                void *userData)
 {
        EditDerivedBMesh *bmdm= (EditDerivedBMesh*) dm;
@@ -579,9 +579,9 @@
 
 static void emDM_drawMappedFaces(
                DerivedMesh *dm,
-               int (*setDrawOptions)(void *userData, int index, int 
*drawSmooth_r),
-               int (*setMaterial)(int, void *attribs),
-               int (*compareDrawOptions)(void *userData, int cur_index, int 
next_index),
+               DMSetDrawOptionsShading setDrawOptions,
+               DMSetMaterial setMaterial,
+               DMCompareDrawOptions compareDrawOptions,
                void *userData, int UNUSED(useColors))
 {
        EditDerivedBMesh *bmdm= (EditDerivedBMesh*) dm;
@@ -777,9 +777,9 @@
 
 static void emDM_drawFacesTex_common(
                DerivedMesh *dm,
-               int (*drawParams)(MTFace *tface, int has_vcol, int matnr),
-               int (*drawParamsMapped)(void *userData, int index),
-               int (*compareDrawOptions)(void *userData, int cur_index, int 
next_index),
+               DMSetDrawOptionsTex drawParams,
+               DMSetDrawOptions drawParamsMapped,
+               DMCompareDrawOptions compareDrawOptions,
                void *userData)
 {
        EditDerivedBMesh *bmdm= (EditDerivedBMesh*) dm;
@@ -960,8 +960,8 @@
 
 static void emDM_drawFacesTex(
                DerivedMesh *dm,
-               int (*setDrawOptions)(MTFace *tface, int has_vcol, int matnr),
-               int (*compareDrawOptions)(void *userData, int cur_index, int 
next_index),
+               DMSetDrawOptionsTex setDrawOptions,
+               DMCompareDrawOptions compareDrawOptions,
                void *userData)
 {
        emDM_drawFacesTex_common(dm, setDrawOptions, NULL, compareDrawOptions, 
userData);
@@ -969,8 +969,8 @@
 
 static void emDM_drawMappedFacesTex(
                DerivedMesh *dm,
-               int (*setDrawOptions)(void *userData, int index),
-               int (*compareDrawOptions)(void *userData, int cur_index, int 
next_index),
+               DMSetDrawOptions setDrawOptions,
+               DMCompareDrawOptions compareDrawOptions,
                void *userData)
 {
        emDM_drawFacesTex_common(dm, NULL, setDrawOptions, compareDrawOptions, 
userData);
@@ -978,8 +978,8 @@
 

@@ Diff output truncated at 10240 characters. @@
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to