|
Blender V5.0
|
#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) |
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 277 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 300 of file geometry_nodes_log.cc.
References allocator, blender::Vector< T, InlineBufferCapacity, Allocator >::append(), blender::bke::SocketValueVariant::convert_to_single(), blender::CPPType::copy_construct(), blender::bke::SocketValueVariant::extract(), blender::bke::SocketValueVariant::get(), blender::GPointer::get(), blender::ImplicitSharingPtr< T, IsStrong >::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_list(), blender::bke::SocketValueVariant::is_volume_grid(), blender::nodes::ClosureSignature::Item::key, output_socket_values, blender::nodes::ClosureSignature::outputs, outputs, SOCK_BUNDLE, SOCK_CLOSURE, SOCK_GEOMETRY, SOCK_IN, blender::GPointer::type(), blender::nodes::ClosureSignature::Item::type, and blender::bke::SocketValueVariant::valid_for_socket().
Referenced by blender::nodes::GeometryNodesLazyFunctionLogger::log_socket_value().
| LinearAllocator* blender::nodes::geo_eval_log::GeoTreeLogger::allocator = nullptr |
Definition at line 290 of file NOD_geometry_nodes_log.hh.
Referenced by blender::nodes::GeometryNodesLazyFunctionLogger::add_thread_id_debug_message(), blender::nodes::LazyFunctionForForeachGeometryElementZone::execute_impl(), blender::nodes::LazyFunctionForViewerNode::execute_impl(), blender::nodes::LazyFunctionForEvaluateClosureNode::generate_closure_compatibility_warnings(), log_value(), and blender::nodes::report_from_multi_function().
| Vector<ComputeContextHash> blender::nodes::geo_eval_log::GeoTreeLogger::children_hashes |
Definition at line 281 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 329 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 331 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 288 of file NOD_geometry_nodes_log.hh.
| linear_allocator::ChunkedList<SocketValueLog, 16> blender::nodes::geo_eval_log::GeoTreeLogger::input_socket_values |
Definition at line 324 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 326 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 325 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 279 of file NOD_geometry_nodes_log.hh.
| std::optional<int32_t> blender::nodes::geo_eval_log::GeoTreeLogger::parent_node_id |
Definition at line 280 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 286 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 328 of file NOD_geometry_nodes_log.hh.
| linear_allocator::ChunkedList<ViewerNodeLogWithNode> blender::nodes::geo_eval_log::GeoTreeLogger::viewer_node_logs |
Definition at line 327 of file NOD_geometry_nodes_log.hh.
Referenced by blender::nodes::LazyFunctionForViewerNode::execute_impl().