[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [44543] trunk/blender/source/blender/ blenkernel/intern/CCGSubSurf.c: Code cleanup: replace a few macros in CCGSubSurf with inline functions.
Nicholas Bishop
nicholasbishop at gmail.com
Wed Feb 29 09:35:43 CET 2012
Revision: 44543
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=44543
Author: nicholasbishop
Date: 2012-02-29 08:35:23 +0000 (Wed, 29 Feb 2012)
Log Message:
-----------
Code cleanup: replace a few macros in CCGSubSurf with inline functions.
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/CCGSubSurf.c
Modified: trunk/blender/source/blender/blenkernel/intern/CCGSubSurf.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/CCGSubSurf.c 2012-02-29 06:55:10 UTC (rev 44542)
+++ trunk/blender/source/blender/blenkernel/intern/CCGSubSurf.c 2012-02-29 08:35:23 UTC (rev 44543)
@@ -310,8 +310,12 @@
// byte *levelData;
// byte *userData;
};
-#define VERT_getLevelData(v) ((byte *) &(v)[1])
+static CCG_INLINE byte *VERT_getLevelData(CCGVert *v)
+{
+ return (byte*)(&(v)[1]);
+}
+
struct CCGEdge {
CCGEdge *next; /* EHData.next */
CCGEdgeHDL eHDL; /* EHData.key */
@@ -325,8 +329,12 @@
// byte *levelData;
// byte *userData;
};
-#define EDGE_getLevelData(e) ((byte *) &(e)[1])
+static CCG_INLINE byte *EDGE_getLevelData(CCGEdge *e)
+{
+ return (byte*)(&(e)[1]);
+}
+
struct CCGFace {
CCGFace *next; /* EHData.next */
CCGFaceHDL fHDL; /* EHData.key */
@@ -339,10 +347,22 @@
// byte **gridData;
// byte *userData;
};
-#define FACE_getVerts(f) ((CCGVert**) &(f)[1])
-#define FACE_getEdges(f) ((CCGEdge**) &(FACE_getVerts(f)[(f)->numVerts]))
-#define FACE_getCenterData(f) ((byte *) &(FACE_getEdges(f)[(f)->numVerts]))
+static CCG_INLINE CCGVert **FACE_getVerts(CCGFace *f)
+{
+ return (CCGVert**)(&f[1]);
+}
+
+static CCG_INLINE CCGEdge **FACE_getEdges(CCGFace *f)
+{
+ return (CCGEdge**)(&(FACE_getVerts(f)[f->numVerts]));
+}
+
+static CCG_INLINE byte *FACE_getCenterData(CCGFace *f)
+{
+ return (byte*)(&(FACE_getEdges(f)[(f)->numVerts]));
+}
+
typedef enum {
eSyncState_None = 0,
eSyncState_Vert,
More information about the Bf-blender-cvs
mailing list