[Bf-blender-cvs] [d91a5b69d99] functions: cleanup socket loaders
Jacques Lucke
noreply at git.blender.org
Thu Aug 1 18:23:32 CEST 2019
Commit: d91a5b69d995b069543ce9b12713382fbfd5705e
Author: Jacques Lucke
Date: Thu Aug 1 16:06:25 2019 +0200
Branches: functions
https://developer.blender.org/rBd91a5b69d995b069543ce9b12713382fbfd5705e
cleanup socket loaders
===================================================================
M source/blender/functions/frontends/data_flow_nodes/inserters.hpp
M source/blender/functions/frontends/data_flow_nodes/inserters/sockets.cpp
===================================================================
diff --git a/source/blender/functions/frontends/data_flow_nodes/inserters.hpp b/source/blender/functions/frontends/data_flow_nodes/inserters.hpp
index c45ae79649d..2b4d3050aaf 100644
--- a/source/blender/functions/frontends/data_flow_nodes/inserters.hpp
+++ b/source/blender/functions/frontends/data_flow_nodes/inserters.hpp
@@ -57,14 +57,17 @@ class NodeInserterRegistry {
class SocketLoaderRegistry {
private:
StringMap<SocketLoader> &m_map;
+ StringMap<std::string> &m_idname_by_data_type;
public:
- SocketLoaderRegistry(StringMap<SocketLoader> &map) : m_map(map)
+ SocketLoaderRegistry(StringMap<SocketLoader> &map)
+ : m_map(map), m_idname_by_data_type(get_idname_by_data_type_map())
{
}
- void loader(StringRef idname, SocketLoader loader)
+ void loader(StringRef data_type, SocketLoader loader)
{
+ std::string &idname = m_idname_by_data_type.lookup_ref(data_type);
m_map.add_new(idname, loader);
}
};
diff --git a/source/blender/functions/frontends/data_flow_nodes/inserters/sockets.cpp b/source/blender/functions/frontends/data_flow_nodes/inserters/sockets.cpp
index 6b523684ce3..fddc382bf83 100644
--- a/source/blender/functions/frontends/data_flow_nodes/inserters/sockets.cpp
+++ b/source/blender/functions/frontends/data_flow_nodes/inserters/sockets.cpp
@@ -57,18 +57,18 @@ template<typename T> static void LOAD_empty_list(PointerRNA *UNUSED(rna), Tuple
void register_socket_loaders(SocketLoaderRegistry ®istry)
{
- registry.loader("fn_FloatSocket", LOAD_float);
- registry.loader("fn_VectorSocket", LOAD_vector);
- registry.loader("fn_IntegerSocket", LOAD_integer);
- registry.loader("fn_BooleanSocket", LOAD_boolean);
- registry.loader("fn_ObjectSocket", LOAD_object);
- registry.loader("fn_ColorSocket", LOAD_color);
- registry.loader("fn_FloatListSocket", LOAD_empty_list<float>);
- registry.loader("fn_VectorListSocket", LOAD_empty_list<float3>);
- registry.loader("fn_IntegerListSocket", LOAD_empty_list<int32_t>);
- registry.loader("fn_BooleanListSocket", LOAD_empty_list<bool>);
- registry.loader("fn_ObjectListSocket", LOAD_empty_list<Object *>);
- registry.loader("fn_ColorListSocket", LOAD_empty_list<rgba_f>);
+ registry.loader("Float", LOAD_float);
+ registry.loader("Vector", LOAD_vector);
+ registry.loader("Integer", LOAD_integer);
+ registry.loader("Boolean", LOAD_boolean);
+ registry.loader("Object", LOAD_object);
+ registry.loader("Color", LOAD_color);
+ registry.loader("Float List", LOAD_empty_list<float>);
+ registry.loader("Vector List", LOAD_empty_list<float3>);
+ registry.loader("Integer List", LOAD_empty_list<int32_t>);
+ registry.loader("Boolean List", LOAD_empty_list<bool>);
+ registry.loader("Object List", LOAD_empty_list<Object *>);
+ registry.loader("Color List", LOAD_empty_list<rgba_f>);
}
} // namespace DataFlowNodes
More information about the Bf-blender-cvs
mailing list