|
Blender V4.5
|
#include <NOD_geometry_nodes_log.hh>
Classes | |
| struct | WarningWithNode |
| struct | SocketValueLog |
| struct | NodeExecutionTime |
| struct | ViewerNodeLogWithNode |
| struct | AttributeUsageWithNode |
| struct | DebugMessage |
| struct | EvaluatedGizmoNode |
Public Member Functions | |
| GeoTreeLogger () | |
| ~GeoTreeLogger () | |
| void | log_value (const bNode &node, const bNodeSocket &socket, GPointer value) |
| void | log_viewer_node (const bNode &viewer_node, bke::GeometrySet geometry) |
Public Attributes | |
| std::optional< ComputeContextHash > | parent_hash |
| std::optional< int32_t > | parent_node_id |
| Vector< ComputeContextHash > | children_hashes |
| std::optional< uint32_t > | tree_orig_session_uid |
| std::chrono::nanoseconds | execution_time {} |
| LinearAllocator * | allocator = nullptr |
| linear_allocator::ChunkedList< WarningWithNode > | node_warnings |
| linear_allocator::ChunkedList< SocketValueLog, 16 > | input_socket_values |
| linear_allocator::ChunkedList< SocketValueLog, 16 > | output_socket_values |
| linear_allocator::ChunkedList< NodeExecutionTime, 16 > | node_execution_times |
| linear_allocator::ChunkedList< ViewerNodeLogWithNode > | viewer_node_logs |
| linear_allocator::ChunkedList< AttributeUsageWithNode > | used_named_attributes |
| linear_allocator::ChunkedList< DebugMessage > | debug_messages |
| linear_allocator::ChunkedList< EvaluatedGizmoNode > | evaluated_gizmo_nodes |
Logs all data for a specific geometry node tree in a specific context. When the same node group is used in multiple times each instantiation will have a separate logger.
Definition at line 244 of file NOD_geometry_nodes_log.hh.
|
default |
|
default |
| void blender::nodes::geo_eval_log::GeoTreeLogger::log_value | ( | const bNode & | node, |
| const bNodeSocket & | socket, | ||
| GPointer | value ) |
Definition at line 285 of file geometry_nodes_log.cc.
References allocator, blender::Vector< T, InlineBufferCapacity, Allocator >::append(), blender::CPPType::copy_construct(), blender::bke::SocketValueVariant::extract(), blender::GPointer::get(), blender::bke::SocketValueVariant::get_single_ptr(), bNode::identifier, bNodeSocket::in_out, input_socket_values, blender::nodes::ClosureSignature::inputs, inputs, blender::CPPType::is(), blender::bke::SocketValueVariant::is_context_dependent_field(), blender::bke::SocketValueVariant::is_volume_grid(), blender::nodes::ClosureSignature::Item::key, output_socket_values, blender::nodes::ClosureSignature::outputs, outputs, SOCK_BUNDLE, SOCK_CLOSURE, SOCK_IN, this, blender::GPointer::type(), blender::nodes::ClosureSignature::Item::type, and blender::bke::SocketValueVariant::valid_for_socket().
Referenced by blender::nodes::GeometryNodesLazyFunctionLogger::log_socket_value().
| void blender::nodes::geo_eval_log::GeoTreeLogger::log_viewer_node | ( | const bNode & | viewer_node, |
| bke::GeometrySet | geometry ) |
Definition at line 363 of file geometry_nodes_log.cc.
References allocator, bNode::identifier, log, and viewer_node_logs.
Referenced by blender::nodes::LazyFunctionForViewerNode::execute_impl().
| LinearAllocator* blender::nodes::geo_eval_log::GeoTreeLogger::allocator = nullptr |
Definition at line 257 of file NOD_geometry_nodes_log.hh.
Referenced by blender::nodes::GeometryNodesLazyFunctionLogger::add_thread_id_debug_message(), blender::nodes::LazyFunctionForForeachGeometryElementZone::execute_impl(), blender::nodes::LazyFunctionForEvaluateClosureNode::generate_closure_compatibility_warnings(), log_value(), log_viewer_node(), and blender::nodes::report_from_multi_function().
| Vector<ComputeContextHash> blender::nodes::geo_eval_log::GeoTreeLogger::children_hashes |
Definition at line 248 of file NOD_geometry_nodes_log.hh.
Referenced by blender::nodes::geo_eval_log::GeoNodesLog::get_local_tree_logger().
| linear_allocator::ChunkedList<DebugMessage> blender::nodes::geo_eval_log::GeoTreeLogger::debug_messages |
Definition at line 296 of file NOD_geometry_nodes_log.hh.
Referenced by blender::nodes::GeometryNodesLazyFunctionLogger::add_thread_id_debug_message().
| linear_allocator::ChunkedList<EvaluatedGizmoNode> blender::nodes::geo_eval_log::GeoTreeLogger::evaluated_gizmo_nodes |
Keeps track of which gizmo nodes have been tracked by this evaluation.
Definition at line 298 of file NOD_geometry_nodes_log.hh.
| std::chrono::nanoseconds blender::nodes::geo_eval_log::GeoTreeLogger::execution_time {} |
The time spend in the compute context that this logger corresponds to.
Definition at line 255 of file NOD_geometry_nodes_log.hh.
| linear_allocator::ChunkedList<SocketValueLog, 16> blender::nodes::geo_eval_log::GeoTreeLogger::input_socket_values |
Definition at line 291 of file NOD_geometry_nodes_log.hh.
Referenced by log_value().
| linear_allocator::ChunkedList<NodeExecutionTime, 16> blender::nodes::geo_eval_log::GeoTreeLogger::node_execution_times |
Definition at line 293 of file NOD_geometry_nodes_log.hh.
| linear_allocator::ChunkedList<WarningWithNode> blender::nodes::geo_eval_log::GeoTreeLogger::node_warnings |
| linear_allocator::ChunkedList<SocketValueLog, 16> blender::nodes::geo_eval_log::GeoTreeLogger::output_socket_values |
Definition at line 292 of file NOD_geometry_nodes_log.hh.
Referenced by log_value().
| std::optional<ComputeContextHash> blender::nodes::geo_eval_log::GeoTreeLogger::parent_hash |
Definition at line 246 of file NOD_geometry_nodes_log.hh.
| std::optional<int32_t> blender::nodes::geo_eval_log::GeoTreeLogger::parent_node_id |
Definition at line 247 of file NOD_geometry_nodes_log.hh.
Referenced by blender::nodes::geo_eval_log::GeoTreeLog::ensure_node_warnings().
| std::optional<uint32_t> blender::nodes::geo_eval_log::GeoTreeLogger::tree_orig_session_uid |
The ID.session_uid of the tree that this logger is for. It's an optional value because under some circumstances it's not possible to know this exactly currently (e.g. for closures).
Definition at line 253 of file NOD_geometry_nodes_log.hh.
Referenced by blender::nodes::geo_eval_log::GeoNodesLog::get_local_tree_logger().
| linear_allocator::ChunkedList<AttributeUsageWithNode> blender::nodes::geo_eval_log::GeoTreeLogger::used_named_attributes |
Definition at line 295 of file NOD_geometry_nodes_log.hh.
| linear_allocator::ChunkedList<ViewerNodeLogWithNode> blender::nodes::geo_eval_log::GeoTreeLogger::viewer_node_logs |
Definition at line 294 of file NOD_geometry_nodes_log.hh.
Referenced by log_viewer_node().