Blender V4.3
NOD_inverse_eval_run.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2024 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
8
10
12
14
16
18
19using bke::SocketValueVariant;
20
26 const ComputeContext *context = nullptr;
27 const bNodeSocket *socket = nullptr;
29 const bNodeLink *multi_input_link = nullptr;
32};
33
38 Object &object,
41 Span<SocketToUpdate> sockets_to_update);
42
46std::optional<SocketValueVariant> get_logged_socket_value(geo_eval_log::GeoTreeLog &tree_log,
47 const bNodeSocket &socket);
48
52std::optional<bke::SocketValueVariant> convert_single_socket_value(
53 const bNodeSocket &old_socket,
54 const bNodeSocket &new_socket,
55 const bke::SocketValueVariant &old_value);
56
57} // namespace blender::nodes::inverse_eval
bool backpropagate_socket_values(bContext &C, Object &object, NodesModifierData &nmd, geo_eval_log::GeoModifierLog &eval_log, const Span< SocketToUpdate > sockets_to_update)
std::optional< SocketValueVariant > get_logged_socket_value(geo_eval_log::GeoTreeLog &tree_log, const bNodeSocket &socket)
std::optional< SocketValueVariant > convert_single_socket_value(const bNodeSocket &old_socket, const bNodeSocket &new_socket, const SocketValueVariant &old_value)