Blender Git Loki
Git Commits -> Revision 4365de3
Revision 4365de3 by Jacques Lucke (master) June 16, 2020, 14:35 (GMT) |
Functions: Multi Function This adds the `MultiFunction` type and some smallish utility types that it uses. A `MultiFunction` encapsulates a function that is optimized for throughput by always processing many elements at once. This is an important part of the new particle system, because it allows us to execute user generated node trees for many particles efficiently. Reviewers: brecht Differential Revision: https://developer.blender.org/D8030 |
Commit Details:
Full Hash: 4365de38700ccc05f98f601efdde0963de4645c1
Parent Commit: f721308
Lines Changed: +2246, -41
13 Added Paths:
/source/blender/functions/FN_array_spans.hh (+220, -0) (View)
/source/blender/functions/FN_generic_vector_array.hh (+181, -0) (View)
/source/blender/functions/FN_multi_function.hh (+106, -0) (View)
/source/blender/functions/FN_multi_function_context.hh (+49, -0) (View)
/source/blender/functions/FN_multi_function_data_type.hh (+125, -0) (View)
/source/blender/functions/FN_multi_function_params.hh (+236, -0) (View)
/source/blender/functions/FN_multi_function_param_type.hh (+155, -0) (View)
/source/blender/functions/FN_multi_function_signature.hh (+161, -0) (View)
/source/blender/functions/FN_spans.hh (+391, -0) (View)
/tests/gtests/functions/FN_array_spans_test.cc (+92, -0) (View)
/tests/gtests/functions/FN_generic_vector_array_test.cc (+101, -0) (View)
/tests/gtests/functions/FN_multi_function_test.cc (+222, -0) (View)
/tests/gtests/functions/FN_spans_test.cc (+159, -0) (View)
/source/blender/functions/FN_generic_vector_array.hh (+181, -0) (View)
/source/blender/functions/FN_multi_function.hh (+106, -0) (View)
/source/blender/functions/FN_multi_function_context.hh (+49, -0) (View)
/source/blender/functions/FN_multi_function_data_type.hh (+125, -0) (View)
/source/blender/functions/FN_multi_function_params.hh (+236, -0) (View)
/source/blender/functions/FN_multi_function_param_type.hh (+155, -0) (View)
/source/blender/functions/FN_multi_function_signature.hh (+161, -0) (View)
/source/blender/functions/FN_spans.hh (+391, -0) (View)
/tests/gtests/functions/FN_array_spans_test.cc (+92, -0) (View)
/tests/gtests/functions/FN_generic_vector_array_test.cc (+101, -0) (View)
/tests/gtests/functions/FN_multi_function_test.cc (+222, -0) (View)
/tests/gtests/functions/FN_spans_test.cc (+159, -0) (View)
6 Modified Paths:
/source/blender/functions/CMakeLists.txt (+8, -0) (Diff)
/source/blender/functions/FN_cpp_type.hh (+30, -34) (Diff)
/source/blender/functions/FN_cpp_types.hh (+2, -2) (Diff)
/source/blender/functions/intern/cpp_types.cc (+2, -2) (Diff)
/tests/gtests/functions/CMakeLists.txt (+4, -0) (Diff)
/tests/gtests/functions/FN_cpp_type_test.cc (+2, -3) (Diff)
/source/blender/functions/FN_cpp_type.hh (+30, -34) (Diff)
/source/blender/functions/FN_cpp_types.hh (+2, -2) (Diff)
/source/blender/functions/intern/cpp_types.cc (+2, -2) (Diff)
/tests/gtests/functions/CMakeLists.txt (+4, -0) (Diff)
/tests/gtests/functions/FN_cpp_type_test.cc (+2, -3) (Diff)