[Bf-blender-cvs] [0e7c9a9] object_nodes: Split opcode macro into thematic sections to make it easier to handle them in parts.

Lukas Tönne noreply at git.blender.org
Thu May 12 19:26:46 CEST 2016


Commit: 0e7c9a93ae8cd7560ce879d178af20e3bf6d441e
Author: Lukas Tönne
Date:   Thu May 12 18:17:32 2016 +0200
Branches: object_nodes
https://developer.blender.org/rB0e7c9a93ae8cd7560ce879d178af20e3bf6d441e

Split opcode macro into thematic sections to make it easier to handle them in parts.

===================================================================

M	source/blender/blenvm/util/util_opcode.h

===================================================================

diff --git a/source/blender/blenvm/util/util_opcode.h b/source/blender/blenvm/util/util_opcode.h
index 1dd7010..2d304c7 100644
--- a/source/blender/blenvm/util/util_opcode.h
+++ b/source/blender/blenvm/util/util_opcode.h
@@ -38,11 +38,11 @@ extern "C" {
 
 namespace blenvm {
 
-/* Macro to handle all opcodes.
+/* Macros to handle opcodes.
  * Expects DEF_OPCODE to be defined locally for this purpose.
  */
 /*************************************/
-#define BVM_DEFINE_OPCODES \
+#define BVM_DEFINE_OPCODES_BASE \
 	DEF_OPCODE(NOOP) \
 	DEF_OPCODE(VALUE_FLOAT) \
 	DEF_OPCODE(VALUE_FLOAT3) \
@@ -54,28 +54,26 @@ namespace blenvm {
 	DEF_OPCODE(VALUE_MESH) \
 	DEF_OPCODE(VALUE_DUPLIS) \
 	\
-	DEF_OPCODE(RANGE_INT) \
-	\
 	DEF_OPCODE(FLOAT_TO_INT) \
 	DEF_OPCODE(INT_TO_FLOAT) \
 	DEF_OPCODE(SET_FLOAT3) \
 	DEF_OPCODE(GET_ELEM_FLOAT3) \
 	DEF_OPCODE(SET_FLOAT4) \
 	DEF_OPCODE(GET_ELEM_FLOAT4) \
-	DEF_OPCODE(MATRIX44_TO_LOC) \
-	DEF_OPCODE(MATRIX44_TO_EULER) \
-	DEF_OPCODE(MATRIX44_TO_AXISANGLE) \
-	DEF_OPCODE(MATRIX44_TO_SCALE) \
-	DEF_OPCODE(LOC_TO_MATRIX44) \
-	DEF_OPCODE(EULER_TO_MATRIX44) \
-	DEF_OPCODE(AXISANGLE_TO_MATRIX44) \
-	DEF_OPCODE(SCALE_TO_MATRIX44) \
-	\
+	
+/*************************************/
+#define BVM_DEFINE_OPCODES_POINTERS \
 	DEF_OPCODE(INIT_MESH_PTR) \
 	DEF_OPCODE(RELEASE_MESH_PTR) \
 	DEF_OPCODE(INIT_DUPLIS_PTR) \
 	DEF_OPCODE(RELEASE_DUPLIS_PTR) \
-	\
+	
+/*************************************/
+#define BVM_DEFINE_OPCODES_ITERATOR \
+	DEF_OPCODE(RANGE_INT) \
+	
+/*************************************/
+#define BVM_DEFINE_OPCODES_MATH \
 	DEF_OPCODE(ADD_FLOAT) \
 	DEF_OPCODE(SUB_FLOAT) \
 	DEF_OPCODE(MUL_FLOAT) \
@@ -124,11 +122,26 @@ namespace blenvm {
 	DEF_OPCODE(MUL_MATRIX44_FLOAT3) \
 	DEF_OPCODE(MUL_MATRIX44_FLOAT4) \
 	\
+	DEF_OPCODE(MATRIX44_TO_LOC) \
+	DEF_OPCODE(MATRIX44_TO_EULER) \
+	DEF_OPCODE(MATRIX44_TO_AXISANGLE) \
+	DEF_OPCODE(MATRIX44_TO_SCALE) \
+	DEF_OPCODE(LOC_TO_MATRIX44) \
+	DEF_OPCODE(EULER_TO_MATRIX44) \
+	DEF_OPCODE(AXISANGLE_TO_MATRIX44) \
+	DEF_OPCODE(SCALE_TO_MATRIX44) \
+	
+/*************************************/
+#define BVM_DEFINE_OPCODES_COLOR \
 	DEF_OPCODE(MIX_RGB) \
-	\
+	
+/*************************************/
+#define BVM_DEFINE_OPCODES_RANDOM \
 	DEF_OPCODE(INT_TO_RANDOM) \
 	DEF_OPCODE(FLOAT_TO_RANDOM) \
-	\
+	
+/*************************************/
+#define BVM_DEFINE_OPCODES_TEXTURE \
 	DEF_OPCODE(TEX_PROC_VORONOI) \
 	DEF_OPCODE(TEX_PROC_MAGIC) \
 	DEF_OPCODE(TEX_PROC_MARBLE) \
@@ -137,37 +150,60 @@ namespace blenvm {
 	DEF_OPCODE(TEX_PROC_MUSGRAVE) \
 	DEF_OPCODE(TEX_PROC_STUCCI) \
 	DEF_OPCODE(TEX_PROC_DISTNOISE) \
-	\
+	
+/*************************************/
+#define BVM_DEFINE_OPCODES_OBJECT \
 	DEF_OPCODE(OBJECT_LOOKUP) \
 	DEF_OPCODE(OBJECT_TRANSFORM) \
 	DEF_OPCODE(OBJECT_FINAL_MESH) \
 	\
 	DEF_OPCODE(EFFECTOR_TRANSFORM) \
 	DEF_OPCODE(EFFECTOR_CLOSEST_POINT) \
-	\
+	
+/*************************************/
+#define BVM_DEFINE_OPCODES_MODIFIER \
 	DEF_OPCODE(MESH_LOAD) \
 	DEF_OPCODE(MESH_COMBINE) \
 	DEF_OPCODE(MESH_ARRAY) \
 	DEF_OPCODE(MESH_DISPLACE) \
 	DEF_OPCODE(MESH_BOOLEAN) \
 	DEF_OPCODE(MESH_CLOSEST_POINT) \
-	\
+	
+/*************************************/
+#define BVM_DEFINE_OPCODES_CURVE \
 	DEF_OPCODE(CURVE_PATH) \
-	\
+	
+/*************************************/
+#define BVM_DEFINE_OPCODES_IMAGE \
 	DEF_OPCODE(IMAGE_SAMPLE) \
-	\
+	
+/*************************************/
+#define BVM_DEFINE_OPCODES_DUPLI \
 	DEF_OPCODE(MAKE_DUPLI) \
 	DEF_OPCODE(DUPLIS_COMBINE) \
-	\
-	DEF_OPCODE(END)
+	
 /*************************************/
 
+#define BVM_DEFINE_OPCODES \
+	BVM_DEFINE_OPCODES_BASE \
+	BVM_DEFINE_OPCODES_COLOR \
+	BVM_DEFINE_OPCODES_CURVE \
+	BVM_DEFINE_OPCODES_DUPLI \
+	BVM_DEFINE_OPCODES_IMAGE \
+	BVM_DEFINE_OPCODES_ITERATOR \
+	BVM_DEFINE_OPCODES_MATH \
+	BVM_DEFINE_OPCODES_MODIFIER \
+	BVM_DEFINE_OPCODES_OBJECT \
+	BVM_DEFINE_OPCODES_POINTERS \
+	BVM_DEFINE_OPCODES_RANDOM \
+	BVM_DEFINE_OPCODES_TEXTURE \
 
 /* Define the main enum for opcodes */
 #define DEF_OPCODE(op) \
 	OP_##op,
 enum OpCode {
-	BVM_DEFINE_OPCODES
+	BVM_DEFINE_OPCODES \
+	OP_END,
 };
 #undef DEF_OPCODE




More information about the Bf-blender-cvs mailing list