Blender V5.0
blender::nodes::geo_eval_log::GeoTreeLogger Class Reference

#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< ComputeContextHashparent_hash
std::optional< int32_tparent_node_id
Vector< ComputeContextHashchildren_hashes
std::optional< uint32_t > tree_orig_session_uid
std::chrono::nanoseconds execution_time {}
LinearAllocatorallocator = nullptr
linear_allocator::ChunkedList< WarningWithNodenode_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< ViewerNodeLogWithNodeviewer_node_logs
linear_allocator::ChunkedList< AttributeUsageWithNodeused_named_attributes
linear_allocator::ChunkedList< DebugMessagedebug_messages
linear_allocator::ChunkedList< EvaluatedGizmoNodeevaluated_gizmo_nodes

Detailed Description

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.

Constructor & Destructor Documentation

◆ GeoTreeLogger()

blender::nodes::geo_eval_log::GeoTreeLogger::GeoTreeLogger ( )
default

◆ ~GeoTreeLogger()

blender::nodes::geo_eval_log::GeoTreeLogger::~GeoTreeLogger ( )
default

Member Function Documentation

◆ log_value()

Member Data Documentation

◆ allocator

◆ children_hashes

Vector<ComputeContextHash> blender::nodes::geo_eval_log::GeoTreeLogger::children_hashes

◆ debug_messages

linear_allocator::ChunkedList<DebugMessage> blender::nodes::geo_eval_log::GeoTreeLogger::debug_messages

◆ evaluated_gizmo_nodes

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.

◆ execution_time

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.

◆ input_socket_values

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().

◆ node_execution_times

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.

◆ node_warnings

◆ output_socket_values

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().

◆ parent_hash

std::optional<ComputeContextHash> blender::nodes::geo_eval_log::GeoTreeLogger::parent_hash

Definition at line 279 of file NOD_geometry_nodes_log.hh.

◆ parent_node_id

std::optional<int32_t> blender::nodes::geo_eval_log::GeoTreeLogger::parent_node_id

◆ tree_orig_session_uid

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().

◆ used_named_attributes

linear_allocator::ChunkedList<AttributeUsageWithNode> blender::nodes::geo_eval_log::GeoTreeLogger::used_named_attributes

Definition at line 328 of file NOD_geometry_nodes_log.hh.

◆ viewer_node_logs

linear_allocator::ChunkedList<ViewerNodeLogWithNode> blender::nodes::geo_eval_log::GeoTreeLogger::viewer_node_logs

The documentation for this class was generated from the following files: