[Bf-blender-cvs] [cabcfb0] object_nodes: Use the common BVM_DEFINE_ALL_OPCODES macro to simplify node->opcode mapping.
Lukas Tönne
noreply at git.blender.org
Wed May 25 17:36:08 CEST 2016
Commit: cabcfb0062aa7176a1e08bcbfab79680ffc4e10b
Author: Lukas Tönne
Date: Wed May 25 12:10:58 2016 +0200
Branches: object_nodes
https://developer.blender.org/rBcabcfb0062aa7176a1e08bcbfab79680ffc4e10b
Use the common BVM_DEFINE_ALL_OPCODES macro to simplify node->opcode mapping.
===================================================================
M source/blender/blenvm/compile/node_graph.cc
===================================================================
diff --git a/source/blender/blenvm/compile/node_graph.cc b/source/blender/blenvm/compile/node_graph.cc
index 3c6b052..d99256c 100644
--- a/source/blender/blenvm/compile/node_graph.cc
+++ b/source/blender/blenvm/compile/node_graph.cc
@@ -1269,123 +1269,15 @@ static void register_typedefs()
OpCode get_opcode_from_node_type(const string &node)
{
- #define NODETYPE(name) \
- if (node == STRINGIFY(name)) \
- return OP_##name
-
- NODETYPE(VALUE_FLOAT);
- NODETYPE(VALUE_FLOAT3);
- NODETYPE(VALUE_FLOAT4);
- NODETYPE(VALUE_INT);
- NODETYPE(VALUE_MATRIX44);
- NODETYPE(VALUE_STRING);
- NODETYPE(VALUE_RNAPOINTER);
- NODETYPE(VALUE_MESH);
- NODETYPE(VALUE_DUPLIS);
-
- NODETYPE(RANGE_INT);
-
- NODETYPE(FLOAT_TO_INT);
- NODETYPE(INT_TO_FLOAT);
- NODETYPE(SET_FLOAT3);
- NODETYPE(GET_ELEM_FLOAT3);
- NODETYPE(SET_FLOAT4);
- NODETYPE(GET_ELEM_FLOAT4);
- NODETYPE(MATRIX44_TO_LOC);
- NODETYPE(MATRIX44_TO_EULER);
- NODETYPE(MATRIX44_TO_AXISANGLE);
- NODETYPE(MATRIX44_TO_SCALE);
- NODETYPE(LOC_TO_MATRIX44);
- NODETYPE(EULER_TO_MATRIX44);
- NODETYPE(AXISANGLE_TO_MATRIX44);
- NODETYPE(SCALE_TO_MATRIX44);
-
- NODETYPE(ADD_FLOAT);
- NODETYPE(SUB_FLOAT);
- NODETYPE(MUL_FLOAT);
- NODETYPE(DIV_FLOAT);
- NODETYPE(SINE);
- NODETYPE(COSINE);
- NODETYPE(TANGENT);
- NODETYPE(ARCSINE);
- NODETYPE(ARCCOSINE);
- NODETYPE(ARCTANGENT);
- NODETYPE(POWER);
- NODETYPE(LOGARITHM);
- NODETYPE(MINIMUM);
- NODETYPE(MAXIMUM);
- NODETYPE(ROUND);
- NODETYPE(LESS_THAN);
- NODETYPE(GREATER_THAN);
- NODETYPE(MODULO);
- NODETYPE(ABSOLUTE);
- NODETYPE(CLAMP_ONE);
- NODETYPE(SQRT);
-
- NODETYPE(ADD_FLOAT3);
- NODETYPE(SUB_FLOAT3);
- NODETYPE(MUL_FLOAT3);
- NODETYPE(DIV_FLOAT3);
- NODETYPE(MUL_FLOAT3_FLOAT);
- NODETYPE(DIV_FLOAT3_FLOAT);
- NODETYPE(AVERAGE_FLOAT3);
- NODETYPE(DOT_FLOAT3);
- NODETYPE(CROSS_FLOAT3);
- NODETYPE(NORMALIZE_FLOAT3);
- NODETYPE(LENGTH_FLOAT3);
-
- NODETYPE(ADD_MATRIX44);
- NODETYPE(SUB_MATRIX44);
- NODETYPE(MUL_MATRIX44);
- NODETYPE(MUL_MATRIX44_FLOAT);
- NODETYPE(DIV_MATRIX44_FLOAT);
- NODETYPE(NEGATE_MATRIX44);
- NODETYPE(TRANSPOSE_MATRIX44);
- NODETYPE(INVERT_MATRIX44);
- NODETYPE(ADJOINT_MATRIX44);
- NODETYPE(DETERMINANT_MATRIX44);
-
- NODETYPE(MUL_MATRIX44_FLOAT3);
- NODETYPE(MUL_MATRIX44_FLOAT4);
-
- NODETYPE(MIX_RGB);
-
- NODETYPE(INT_TO_RANDOM);
- NODETYPE(FLOAT_TO_RANDOM);
-
- NODETYPE(TEX_PROC_VORONOI);
- NODETYPE(TEX_PROC_CLOUDS);
- NODETYPE(TEX_PROC_WOOD);
- NODETYPE(TEX_PROC_MUSGRAVE);
- NODETYPE(TEX_PROC_MAGIC);
- NODETYPE(TEX_PROC_STUCCI);
- NODETYPE(TEX_PROC_MARBLE);
- NODETYPE(TEX_PROC_DISTNOISE);
-
- NODETYPE(OBJECT_LOOKUP);
- NODETYPE(OBJECT_TRANSFORM);
- NODETYPE(OBJECT_FINAL_MESH);
-
- NODETYPE(EFFECTOR_TRANSFORM);
- NODETYPE(EFFECTOR_CLOSEST_POINT);
-
- NODETYPE(MESH_LOAD);
- NODETYPE(MESH_COMBINE);
- NODETYPE(MESH_ARRAY);
- NODETYPE(MESH_DISPLACE);
- NODETYPE(MESH_BOOLEAN);
- NODETYPE(MESH_CLOSEST_POINT);
-
- NODETYPE(CURVE_PATH);
-
- NODETYPE(IMAGE_SAMPLE);
-
- NODETYPE(MAKE_DUPLI);
- NODETYPE(DUPLIS_COMBINE);
-
- #undef NODETYPE
-
- return OP_NOOP;
+#define DEF_OPCODE(op) \
+ if (node == STRINGIFY(op)) \
+ return OP_##op; \
+ else
+
+ BVM_DEFINE_ALL_OPCODES
+ return OP_NOOP;
+
+#undef DEF_OPCODE
}
static mesh_ptr __empty_mesh__;
More information about the Bf-blender-cvs
mailing list