|
Blender V5.0
|
#include <NOD_multi_function.hh>
Inherits blender::NonCopyable, and blender::NonMovable.
Public Member Functions | |
#NodeMultiFunctionBuilder Inline Methods | |
| NodeMultiFunctionBuilder (const bNode &node, const bNodeTree &tree) | |
| void | set_matching_fn (const mf::MultiFunction *fn) |
| void | set_matching_fn (const mf::MultiFunction &fn) |
| template<typename T, typename... Args> | |
| void | construct_and_set_matching_fn (Args &&...args) |
| template<typename Fn> | |
| void | construct_and_set_matching_fn_cb (Fn &&create_multi_function) |
| const bNode & | node () |
| const bNodeTree & | tree () |
| const mf::MultiFunction & | function () |
Utility class to help nodes build a multi-function for themselves.
Definition at line 18 of file NOD_multi_function.hh.
|
inline |
Definition at line 79 of file NOD_multi_function.hh.
|
inline |
Utility method for creating and assigning a multi-function when it can't have a static lifetime.
Definition at line 110 of file NOD_multi_function.hh.
Referenced by blender::nodes::node_shader_tex_gabor_cc::build_multi_function(), blender::nodes::node_composite_normal_cc::node_build_multi_function(), blender::nodes::node_fn_align_euler_to_vector_cc::node_build_multi_function(), blender::nodes::node_fn_align_rotation_to_vector_cc::node_build_multi_function(), blender::nodes::node_fn_axes_to_rotation_cc::node_build_multi_function(), blender::nodes::node_fn_format_string_cc::node_build_multi_function(), blender::nodes::node_fn_input_bool_cc::node_build_multi_function(), blender::nodes::node_fn_input_color_cc::node_build_multi_function(), blender::nodes::node_fn_input_int_cc::node_build_multi_function(), blender::nodes::node_fn_input_rotation_cc::node_build_multi_function(), blender::nodes::node_fn_input_string_cc::node_build_multi_function(), blender::nodes::node_fn_input_vector_cc::node_build_multi_function(), blender::nodes::node_math_build_multi_function(), blender::nodes::node_shader_tex_brick_cc::sh_node_brick_build_multi_function(), blender::nodes::node_shader_curves_cc::flt::sh_node_curve_float_build_multi_function(), blender::nodes::node_shader_curves_cc::rgb::sh_node_curve_rgb_build_multi_function(), blender::nodes::node_shader_curves_cc::vec::sh_node_curve_vec_build_multi_function(), blender::nodes::node_shader_tex_gradient_cc::sh_node_gradient_tex_build_multi_function(), blender::nodes::node_shader_tex_magic_cc::sh_node_magic_tex_build_multi_function(), blender::nodes::node_sh_mix_cc::sh_node_mix_build_multi_function(), blender::nodes::node_shader_mix_rgb_cc::sh_node_mix_rgb_build_multi_function(), blender::nodes::node_shader_tex_noise_cc::sh_node_noise_build_multi_function(), blender::nodes::node_shader_tex_white_noise_cc::sh_node_noise_build_multi_function(), blender::nodes::node_shader_radial_tiling_cc::sh_node_radial_tiling_build_multi_function(), blender::nodes::node_shader_color_ramp_cc::sh_node_valtorgb_build_multi_function(), blender::nodes::node_shader_value_cc::sh_node_value_build_multi_function(), blender::nodes::node_shader_tex_voronoi_cc::sh_node_voronoi_build_multi_function(), and blender::nodes::node_shader_tex_wave_cc::sh_node_wave_tex_build_multi_function().
|
inline |
Similar to construct_and_set_matching_fn, but can be used when the type name of the multi-function is not known (e.g. when using mf::build::SI1_SO).
| create_multi_function | A function that returns the multi-function by value. |
Definition at line 117 of file NOD_multi_function.hh.
References T.
Referenced by blender::nodes::node_composite_chroma_matte_cc::node_build_multi_function(), blender::nodes::node_composite_color_matte_cc::node_build_multi_function(), blender::nodes::node_composite_colorcorrection_cc::node_build_multi_function(), blender::nodes::node_composite_diff_matte_cc::node_build_multi_function(), blender::nodes::node_composite_huecorrect_cc::node_build_multi_function(), blender::nodes::node_composite_luma_matte_cc::node_build_multi_function(), blender::nodes::node_composite_rgb_curves_cc::node_build_multi_function(), and blender::nodes::node_composite_rgb_to_bw_cc::node_build_multi_function().
|
inline |
Definition at line 94 of file NOD_multi_function.hh.
|
inline |
Definition at line 84 of file NOD_multi_function.hh.
Referenced by blender::nodes::node_shader_tex_gabor_cc::build_multi_function(), blender::nodes::node_composite_combine_color_cc::node_build_multi_function(), blender::nodes::node_composite_huecorrect_cc::node_build_multi_function(), blender::nodes::node_composite_normal_cc::node_build_multi_function(), blender::nodes::node_composite_rgb_curves_cc::node_build_multi_function(), blender::nodes::node_composite_separate_color_cc::node_build_multi_function(), blender::nodes::node_fn_align_euler_to_vector_cc::node_build_multi_function(), blender::nodes::node_fn_align_rotation_to_vector_cc::node_build_multi_function(), blender::nodes::node_fn_axes_to_rotation_cc::node_build_multi_function(), blender::nodes::node_fn_bit_math_cc::node_build_multi_function(), blender::nodes::node_fn_boolean_math_cc::node_build_multi_function(), blender::nodes::node_fn_combine_color_cc::node_build_multi_function(), blender::nodes::node_fn_compare_cc::node_build_multi_function(), blender::nodes::node_fn_float_to_int_cc::node_build_multi_function(), blender::nodes::node_fn_format_string_cc::node_build_multi_function(), blender::nodes::node_fn_hash_value_cc::node_build_multi_function(), blender::nodes::node_fn_input_bool_cc::node_build_multi_function(), blender::nodes::node_fn_input_color_cc::node_build_multi_function(), blender::nodes::node_fn_input_int_cc::node_build_multi_function(), blender::nodes::node_fn_input_rotation_cc::node_build_multi_function(), blender::nodes::node_fn_input_string_cc::node_build_multi_function(), blender::nodes::node_fn_input_vector_cc::node_build_multi_function(), blender::nodes::node_fn_integer_math_cc::node_build_multi_function(), blender::nodes::node_fn_random_value_cc::node_build_multi_function(), blender::nodes::node_fn_rotate_euler_cc::node_build_multi_function(), blender::nodes::node_fn_rotate_rotation_cc::node_build_multi_function(), blender::nodes::node_fn_separate_color_cc::node_build_multi_function(), blender::nodes::node_fn_string_to_value_cc::node_build_multi_function(), blender::nodes::node_fn_value_to_string_cc::node_build_multi_function(), blender::nodes::node_math_build_multi_function(), NodeMultiFunctionBuilder(), blender::nodes::node_shader_tex_brick_cc::sh_node_brick_build_multi_function(), blender::nodes::node_shader_clamp_cc::sh_node_clamp_build_multi_function(), blender::nodes::node_shader_curves_cc::flt::sh_node_curve_float_build_multi_function(), blender::nodes::node_shader_curves_cc::rgb::sh_node_curve_rgb_build_multi_function(), blender::nodes::node_shader_curves_cc::vec::sh_node_curve_vec_build_multi_function(), blender::nodes::node_shader_tex_gradient_cc::sh_node_gradient_tex_build_multi_function(), blender::nodes::node_shader_tex_magic_cc::sh_node_magic_tex_build_multi_function(), blender::nodes::node_shader_map_range_cc::sh_node_map_range_build_multi_function(), blender::nodes::node_sh_mix_cc::sh_node_mix_build_multi_function(), blender::nodes::node_shader_mix_rgb_cc::sh_node_mix_rgb_build_multi_function(), blender::nodes::node_shader_tex_noise_cc::sh_node_noise_build_multi_function(), blender::nodes::node_shader_tex_white_noise_cc::sh_node_noise_build_multi_function(), blender::nodes::node_shader_radial_tiling_cc::sh_node_radial_tiling_build_multi_function(), blender::nodes::node_shader_color_ramp_cc::sh_node_valtorgb_build_multi_function(), blender::nodes::node_shader_value_cc::sh_node_value_build_multi_function(), blender::nodes::node_shader_vector_math_cc::sh_node_vector_math_build_multi_function(), blender::nodes::node_shader_vector_rotate_cc::sh_node_vector_rotate_build_multi_function(), blender::nodes::node_shader_tex_voronoi_cc::sh_node_voronoi_build_multi_function(), and blender::nodes::node_shader_tex_wave_cc::sh_node_wave_tex_build_multi_function().
|
inline |
Definition at line 104 of file NOD_multi_function.hh.
|
inline |
Assign a multi-function for the current node. The input and output parameters of the function have to match the available sockets in the node.
Definition at line 99 of file NOD_multi_function.hh.
Referenced by blender::nodes::node_composite_alpha_over_cc::node_build_multi_function(), blender::nodes::node_composite_brightness_cc::node_build_multi_function(), blender::nodes::node_composite_channel_matte_cc::node_build_multi_function(), blender::nodes::node_composite_color_spill_cc::node_build_multi_function(), blender::nodes::node_composite_colorbalance_cc::node_build_multi_function(), blender::nodes::node_composite_combine_color_cc::node_build_multi_function(), blender::nodes::node_composite_distance_matte_cc::node_build_multi_function(), blender::nodes::node_composite_exposure_cc::node_build_multi_function(), blender::nodes::node_composite_hue_sat_val_cc::node_build_multi_function(), blender::nodes::node_composite_invert_cc::node_build_multi_function(), blender::nodes::node_composite_posterize_cc::node_build_multi_function(), blender::nodes::node_composite_premulkey_cc::node_build_multi_function(), blender::nodes::node_composite_separate_color_cc::node_build_multi_function(), blender::nodes::node_composite_setalpha_cc::node_build_multi_function(), blender::nodes::node_fn_axis_angle_to_rotation_cc::node_build_multi_function(), blender::nodes::node_fn_bit_math_cc::node_build_multi_function(), blender::nodes::node_fn_boolean_math_cc::node_build_multi_function(), blender::nodes::node_fn_combine_color_cc::node_build_multi_function(), blender::nodes::node_fn_combine_matrix_cc::node_build_multi_function(), blender::nodes::node_fn_combine_transform_cc::node_build_multi_function(), blender::nodes::node_fn_compare_cc::node_build_multi_function(), blender::nodes::node_fn_euler_to_rotation_cc::node_build_multi_function(), blender::nodes::node_fn_find_in_string_cc::node_build_multi_function(), blender::nodes::node_fn_float_to_int_cc::node_build_multi_function(), blender::nodes::node_fn_hash_value_cc::node_build_multi_function(), blender::nodes::node_fn_input_special_characters_cc::node_build_multi_function(), blender::nodes::node_fn_integer_math_cc::node_build_multi_function(), blender::nodes::node_fn_invert_matrix_cc::node_build_multi_function(), blender::nodes::node_fn_invert_rotation_cc::node_build_multi_function(), blender::nodes::node_fn_match_string_cc::node_build_multi_function(), blender::nodes::node_fn_matrix_determinant_cc::node_build_multi_function(), blender::nodes::node_fn_matrix_multiply_cc::node_build_multi_function(), blender::nodes::node_fn_project_point_cc::node_build_multi_function(), blender::nodes::node_fn_quaternion_to_rotation_cc::node_build_multi_function(), blender::nodes::node_fn_random_value_cc::node_build_multi_function(), blender::nodes::node_fn_replace_string_cc::node_build_multi_function(), blender::nodes::node_fn_rotate_euler_cc::node_build_multi_function(), blender::nodes::node_fn_rotate_rotation_cc::node_build_multi_function(), blender::nodes::node_fn_rotate_vector_cc::node_build_multi_function(), blender::nodes::node_fn_rotation_to_axis_angle_cc::node_build_multi_function(), blender::nodes::node_fn_rotation_to_euler_cc::node_build_multi_function(), blender::nodes::node_fn_rotation_to_quaternion_cc::node_build_multi_function(), blender::nodes::node_fn_separate_color_cc::node_build_multi_function(), blender::nodes::node_fn_separate_matrix_cc::node_build_multi_function(), blender::nodes::node_fn_separate_transform_cc::node_build_multi_function(), blender::nodes::node_fn_slice_string_cc::node_build_multi_function(), blender::nodes::node_fn_string_length_cc::node_build_multi_function(), blender::nodes::node_fn_string_to_value_cc::node_build_multi_function(), blender::nodes::node_fn_transform_direction_cc::node_build_multi_function(), blender::nodes::node_fn_transform_point_cc::node_build_multi_function(), blender::nodes::node_fn_transpose_matrix_cc::node_build_multi_function(), blender::nodes::node_fn_value_to_string_cc::node_build_multi_function(), blender::nodes::node_shader_gamma_cc::node_build_multi_function(), blender::nodes::node_math_build_multi_function(), blender::nodes::node_shader_blackbody_cc::sh_node_blackbody_build_multi_function(), blender::nodes::node_shader_clamp_cc::sh_node_clamp_build_multi_function(), blender::nodes::node_shader_sepcomb_xyz_cc::comb::sh_node_combxyz_build_multi_function(), blender::nodes::node_shader_map_range_cc::sh_node_map_range_build_multi_function(), blender::nodes::node_sh_mix_cc::sh_node_mix_build_multi_function(), blender::nodes::node_shader_sepcomb_xyz_cc::sep::sh_node_sepxyz_build_multi_function(), blender::nodes::node_shader_tex_checker_cc::sh_node_tex_checker_build_multi_function(), blender::nodes::node_shader_vector_math_cc::sh_node_vector_math_build_multi_function(), and blender::nodes::node_shader_vector_rotate_cc::sh_node_vector_rotate_build_multi_function().
|
inline |
Definition at line 89 of file NOD_multi_function.hh.
Referenced by NodeMultiFunctionBuilder().