[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [44811] trunk/blender/source/blender/ editors/animation/anim_channels_defines.c: improve confusing macro GET_ACF_FLAG_PTR

Campbell Barton ideasman42 at gmail.com
Sun Mar 11 18:41:31 CET 2012


Revision: 44811
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=44811
Author:   campbellbarton
Date:     2012-03-11 17:41:19 +0000 (Sun, 11 Mar 2012)
Log Message:
-----------
improve confusing macro GET_ACF_FLAG_PTR
- was operating on `type` which wasnt an argument to the macro.
- was calling return within the macro (makes code harder to follow).

Modified Paths:
--------------
    trunk/blender/source/blender/editors/animation/anim_channels_defines.c

Modified: trunk/blender/source/blender/editors/animation/anim_channels_defines.c
===================================================================
--- trunk/blender/source/blender/editors/animation/anim_channels_defines.c	2012-03-11 17:24:03 UTC (rev 44810)
+++ trunk/blender/source/blender/editors/animation/anim_channels_defines.c	2012-03-11 17:41:19 UTC (rev 44811)
@@ -87,14 +87,11 @@
 #define ANIM_CHAN_NAME_SIZE 256
 
 /* macros used for type defines */
-	/* get the pointer used for some flag */
-#define GET_ACF_FLAG_PTR(ptr) \
-	{ \
-		*type= sizeof((ptr)); \
-		return &(ptr); \
-	} 
 
+/* get the pointer used for some flag and return */
+#define GET_ACF_FLAG_PTR(ptr, type) ((*(type) = sizeof((ptr))), &(ptr))
 
+
 /* *********************************************** */
 /* Generic Functions (Type independent) */
 
@@ -453,7 +450,7 @@
 		bDopeSheet *ads= &saction->ads;
 		
 		/* return pointer to DopeSheet's flag */
-		GET_ACF_FLAG_PTR(ads->flag);
+		return GET_ACF_FLAG_PTR(ads->flag, type);
 	}
 	else {
 		/* can't return anything useful - unsupported */
@@ -547,15 +544,15 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_SELECT: /* selected */
-			GET_ACF_FLAG_PTR(scene->flag);
+			return GET_ACF_FLAG_PTR(scene->flag, type);
 			
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(scene->flag);
+			return GET_ACF_FLAG_PTR(scene->flag, type);
 			
 		case ACHANNEL_SETTING_MUTE: /* mute (only in NLA) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (scene->adt)
-				GET_ACF_FLAG_PTR(scene->adt->flag)
+				return GET_ACF_FLAG_PTR(scene->adt->flag, type);
 			else
 				return NULL;
 			
@@ -694,15 +691,15 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_SELECT: /* selected */
-			GET_ACF_FLAG_PTR(ob->flag);
+			return GET_ACF_FLAG_PTR(ob->flag, type);
 			
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(ob->nlaflag); // xxx
+			return GET_ACF_FLAG_PTR(ob->nlaflag, type); // xxx
 			
 		case ACHANNEL_SETTING_MUTE: /* mute (only in NLA) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (ob->adt)
-				GET_ACF_FLAG_PTR(ob->adt->flag)
+				return GET_ACF_FLAG_PTR(ob->adt->flag, type);
 			else
 				return NULL;
 			
@@ -835,7 +832,7 @@
 	bActionGroup *agrp= (bActionGroup *)ale->data;
 	
 	/* all flags are just in agrp->flag for now... */
-	GET_ACF_FLAG_PTR(agrp->flag);
+	return GET_ACF_FLAG_PTR(agrp->flag, type);
 }
 
 /* group type define */
@@ -922,7 +919,7 @@
 	FCurve *fcu= (FCurve *)ale->data;
 	
 	/* all flags are just in agrp->flag for now... */
-	GET_ACF_FLAG_PTR(fcu->flag);
+	return GET_ACF_FLAG_PTR(fcu->flag, type);
 }
 
 /* fcurve type define */
@@ -997,13 +994,13 @@
 	switch (setting) {
 		case ACHANNEL_SETTING_SELECT: /* selected */
 			if (adt) {
-				GET_ACF_FLAG_PTR(adt->flag);
+				return GET_ACF_FLAG_PTR(adt->flag, type);
 			}
 			else
 				return NULL;
 			
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(act->flag);
+			return GET_ACF_FLAG_PTR(act->flag, type);
 		
 		default: /* unsupported */
 			return NULL;
@@ -1082,7 +1079,7 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(adt->flag);
+			return GET_ACF_FLAG_PTR(adt->flag, type);
 		
 		default: /* unsupported */
 			return NULL;
@@ -1152,13 +1149,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(ma->flag);
+			return GET_ACF_FLAG_PTR(ma->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (ma->adt)
-				GET_ACF_FLAG_PTR(ma->adt->flag)
+				return GET_ACF_FLAG_PTR(ma->adt->flag, type);
 			else
 				return NULL;	
 		
@@ -1229,13 +1226,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(la->flag);
+			return GET_ACF_FLAG_PTR(la->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (la->adt)
-				GET_ACF_FLAG_PTR(la->adt->flag)
+				return GET_ACF_FLAG_PTR(la->adt->flag, type);
 			else
 				return NULL;	
 		
@@ -1313,13 +1310,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(tex->flag);
+			return GET_ACF_FLAG_PTR(tex->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (tex->adt)
-				GET_ACF_FLAG_PTR(tex->adt->flag)
+				return GET_ACF_FLAG_PTR(tex->adt->flag, type);
 			else
 				return NULL;	
 		
@@ -1390,13 +1387,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(ca->flag);
+			return GET_ACF_FLAG_PTR(ca->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (ca->adt)
-				GET_ACF_FLAG_PTR(ca->adt->flag)
+				return GET_ACF_FLAG_PTR(ca->adt->flag, type);
 			else
 				return NULL;
 		
@@ -1477,13 +1474,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(cu->flag);
+			return GET_ACF_FLAG_PTR(cu->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (cu->adt)
-				GET_ACF_FLAG_PTR(cu->adt->flag)
+				return GET_ACF_FLAG_PTR(cu->adt->flag, type);
 			else
 				return NULL;
 		
@@ -1554,13 +1551,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(key->flag);
+			return GET_ACF_FLAG_PTR(key->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (key->adt)
-				GET_ACF_FLAG_PTR(key->adt->flag)
+				return GET_ACF_FLAG_PTR(key->adt->flag, type);
 			else
 				return NULL;
 		
@@ -1631,13 +1628,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(wo->flag);
+			return GET_ACF_FLAG_PTR(wo->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (wo->adt)
-				GET_ACF_FLAG_PTR(wo->adt->flag)
+				return GET_ACF_FLAG_PTR(wo->adt->flag, type);
 			else
 				return NULL;
 		
@@ -1708,13 +1705,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(part->flag);
+			return GET_ACF_FLAG_PTR(part->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (part->adt)
-				GET_ACF_FLAG_PTR(part->adt->flag)
+				return GET_ACF_FLAG_PTR(part->adt->flag, type);
 			else
 				return NULL;
 		
@@ -1785,13 +1782,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(mb->flag);
+			return GET_ACF_FLAG_PTR(mb->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (mb->adt)
-				GET_ACF_FLAG_PTR(mb->adt->flag)
+				return GET_ACF_FLAG_PTR(mb->adt->flag, type);
 			else
 				return NULL;
 		
@@ -1862,13 +1859,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(arm->flag);
+			return GET_ACF_FLAG_PTR(arm->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (arm->adt)
-				GET_ACF_FLAG_PTR(arm->adt->flag)
+				return GET_ACF_FLAG_PTR(arm->adt->flag, type);
 			else
 				return NULL;
 		
@@ -1950,13 +1947,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(ntree->flag);
+			return GET_ACF_FLAG_PTR(ntree->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (ntree->adt)
-				GET_ACF_FLAG_PTR(ntree->adt->flag)
+				return GET_ACF_FLAG_PTR(ntree->adt->flag, type);
 				else
 					return NULL;
 			
@@ -2027,13 +2024,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(me->flag);
+			return GET_ACF_FLAG_PTR(me->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (me->adt)
-				GET_ACF_FLAG_PTR(me->adt->flag)
+				return GET_ACF_FLAG_PTR(me->adt->flag, type);
 				else
 					return NULL;
 			
@@ -2104,13 +2101,13 @@
 	
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(lt->flag);
+			return GET_ACF_FLAG_PTR(lt->flag, type);
 			
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (lt->adt)
-				GET_ACF_FLAG_PTR(lt->adt->flag)
+				return GET_ACF_FLAG_PTR(lt->adt->flag, type);
 				else
 					return NULL;
 			
@@ -2181,13 +2178,13 @@
 
 	switch (setting) {
 		case ACHANNEL_SETTING_EXPAND: /* expanded */
-			GET_ACF_FLAG_PTR(spk->flag);
+			return GET_ACF_FLAG_PTR(spk->flag, type);
 		
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted (for NLA only) */
 		case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
 			if (spk->adt)
-				GET_ACF_FLAG_PTR(spk->adt->flag)
+				return GET_ACF_FLAG_PTR(spk->adt->flag, type);
 			else
 				return NULL;
 		
@@ -2296,7 +2293,7 @@
 		case ACHANNEL_SETTING_SELECT: /* selected */
 		case ACHANNEL_SETTING_MUTE: /* muted */
 		case ACHANNEL_SETTING_PROTECT: /* protected */
-			GET_ACF_FLAG_PTR(kb->flag)
+			return GET_ACF_FLAG_PTR(kb->flag, type);
 		
 		default: /* unsupported */
 			return NULL;

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list