[Bf-blender-cvs] [dcd90fae85a] functions: start implementing float list in frontend
Jacques Lucke
noreply at git.blender.org
Sun Mar 10 16:28:43 CET 2019
Commit: dcd90fae85aec6c3853d61c1112338989bac9945
Author: Jacques Lucke
Date: Sun Mar 10 15:03:53 2019 +0100
Branches: functions
https://developer.blender.org/rBdcd90fae85aec6c3853d61c1112338989bac9945
start implementing float list in frontend
===================================================================
M source/blender/functions/frontends/data_flow_nodes/builder.cpp
M source/blender/functions/frontends/data_flow_nodes/test_sockets.cpp
===================================================================
diff --git a/source/blender/functions/frontends/data_flow_nodes/builder.cpp b/source/blender/functions/frontends/data_flow_nodes/builder.cpp
index c48b0fface7..2f0e68a786a 100644
--- a/source/blender/functions/frontends/data_flow_nodes/builder.cpp
+++ b/source/blender/functions/frontends/data_flow_nodes/builder.cpp
@@ -72,6 +72,9 @@ namespace FN { namespace DataFlowNodes {
else if (STREQ(bsocket->idname, "fn_VectorSocket")) {
return Types::get_fvec3_type();
}
+ else if (STREQ(bsocket->idname, "fn_FloatListSocket")) {
+ return Types::get_float_list_type();
+ }
else {
BLI_assert(false);
return *(SharedType *)nullptr;
diff --git a/source/blender/functions/frontends/data_flow_nodes/test_sockets.cpp b/source/blender/functions/frontends/data_flow_nodes/test_sockets.cpp
index 3bc6569abe6..02b91a1ab6b 100644
--- a/source/blender/functions/frontends/data_flow_nodes/test_sockets.cpp
+++ b/source/blender/functions/frontends/data_flow_nodes/test_sockets.cpp
@@ -20,10 +20,24 @@ namespace FN { namespace DataFlowNodes {
tuple.set<Types::Vector>(index, Types::Vector(vector));
}
+ static void load_integer(PointerRNA *ptr, Tuple &tuple, uint index)
+ {
+ int value = RNA_int_get(ptr, "value");
+ tuple.set<int32_t>(index, value);
+ }
+
+ static void load_float_list(PointerRNA *UNUSED(ptr), Tuple &tuple, uint index)
+ {
+ auto list = Types::SharedFloatList::New();
+ tuple.move_in(index, list);
+ }
+
void initialize_socket_inserters(GraphInserters &inserters)
{
inserters.reg_socket_loader("fn_FloatSocket", load_float);
inserters.reg_socket_loader("fn_VectorSocket", load_vector);
+ inserters.reg_socket_loader("fn_IntegerSocket", load_integer);
+ inserters.reg_socket_loader("fn_FloatListSocket", load_float_list);
}
} }
\ No newline at end of file
More information about the Bf-blender-cvs
mailing list