201 std::variant<const bke::bNodeSocketType *, StringRefNull>
type;
233 const std::optional<ClosureSourceLocation> &source_location,
234 std::shared_ptr<ClosureEvalLog>
eval_log);
248 mutable CacheMutex main_geometry_cache_mutex_;
249 mutable std::optional<bke::GeometrySet> main_geometry_cache_;
270using Clock = std::chrono::steady_clock;
379 bool reduced_node_warnings_ =
false;
380 bool reduced_execution_times_ =
false;
381 bool reduced_socket_values_ =
false;
382 bool reduced_viewer_node_logs_ =
false;
383 bool reduced_existing_attributes_ =
false;
384 bool reduced_used_named_attributes_ =
false;
385 bool reduced_debug_messages_ =
false;
386 bool reduced_evaluated_gizmo_nodes_ =
false;
387 bool reduced_layer_names_ =
false;
#define BLI_STRUCT_EQUALITY_OPERATORS_2(Type, m1, m2)
#define ENUM_OPERATORS(_type, _max)
unsigned long long int uint64_t
static const CPPType & get()
BundleValueLog(Vector< Item > items)
std::optional< Source > source
ClosureValueLog(Vector< Item > inputs, Vector< Item > outputs, const std::optional< ClosureSourceLocation > &source_location, std::shared_ptr< ClosureEvalLog > eval_log)
std::shared_ptr< ClosureEvalLog > eval_log
GeoTreeLog * get_main_tree_log(const bke::bNodeTreeZone *zone) const
ContextualGeoTreeLogs(Map< const bke::bNodeTreeZone *, GeoTreeLog * > tree_logs_by_zone={})
void foreach_tree_log(FunctionRef< void(GeoTreeLog &)> callback) const
Vector< std::string > input_tooltips
FieldInfoLog(const GField &field)
GenericValueLog(const GMutablePointer value)
~GenericValueLog() override
Map< int, ValueLog * > input_values_
Map< StringRefNull, NamedAttributeUsage > used_named_attributes
Map< int, ValueLog * > output_values_
VectorSet< NodeWarning > warnings
std::chrono::nanoseconds execution_time
Vector< StringRefNull > debug_messages
static ContextualGeoTreeLogs get_contextual_tree_logs(const SpaceNode &snode)
static Map< const bke::bNodeTreeZone *, ComputeContextHash > get_context_hash_by_zone_for_node_editor(const SpaceNode &snode, bke::ComputeContextCache &compute_context_cache)
static const ViewerNodeLog * find_viewer_node_log_for_path(const ViewerPath &viewer_path)
GeoTreeLogger & get_local_tree_logger(const ComputeContext &compute_context)
GeoTreeLog & get_tree_log(const ComputeContextHash &compute_context_hash)
Vector< const GeometryAttributeInfo * > existing_attributes
void ensure_evaluated_gizmo_nodes()
void ensure_node_warnings(const NodesModifierData &nmd)
void ensure_used_named_attributes()
VectorSet< NodeWarning > all_warnings
Set< int > evaluated_gizmo_nodes
void ensure_existing_attributes()
void ensure_socket_values()
bool try_convert_primitive_socket_value(const GenericValueLog &value_log, const CPPType &dst_type, void *dst)
std::chrono::nanoseconds execution_time
void ensure_execution_times()
void ensure_viewer_node_logs()
Map< int32_t, ViewerNodeLog *, 0 > viewer_node_logs
std::optional< T > find_primitive_socket_value(const bNodeSocket &query_socket)
Vector< std::string > all_layer_names
Map< StringRefNull, NamedAttributeUsage > used_named_attributes
Map< int32_t, GeoNodeLog > nodes
void ensure_layer_names()
void ensure_debug_messages()
GeoTreeLog(GeoNodesLog *root_log, Vector< GeoTreeLogger * > tree_loggers)
ValueLog * find_socket_value_log(const bNodeSocket &query_socket)
std::chrono::nanoseconds execution_time
linear_allocator::ChunkedList< EvaluatedGizmoNode > evaluated_gizmo_nodes
linear_allocator::ChunkedList< AttributeUsageWithNode > used_named_attributes
linear_allocator::ChunkedList< NodeExecutionTime, 16 > node_execution_times
linear_allocator::ChunkedList< ViewerNodeLogWithNode > viewer_node_logs
std::optional< ComputeContextHash > parent_hash
std::optional< int32_t > parent_node_id
linear_allocator::ChunkedList< WarningWithNode > node_warnings
linear_allocator::ChunkedList< DebugMessage > debug_messages
LinearAllocator * allocator
linear_allocator::ChunkedList< SocketValueLog, 16 > input_socket_values
void log_value(const bNode &node, const bNodeSocket &socket, GPointer value)
std::optional< uint32_t > tree_orig_session_uid
linear_allocator::ChunkedList< SocketValueLog, 16 > output_socket_values
Vector< ComputeContextHash > children_hashes
std::optional< EditDataInfo > edit_data_info
std::optional< MeshInfo > mesh_info
GeometryInfoLog(const bke::GeometrySet &geometry_set)
std::optional< GreasePencilInfo > grease_pencil_info
std::optional< PointCloudInfo > pointcloud_info
Vector< bke::GeometryComponent::Type > component_types
std::optional< InstancesInfo > instances_info
std::optional< VolumeInfo > volume_info
Vector< GeometryAttributeInfo > attributes
std::optional< CurveInfo > curve_info
GridInfoLog(const bke::GVolumeGrid &grid)
ListInfoLog(const List *list)
virtual ~ValueLog()=default
const bke::GeometrySet * main_geometry() const
CustomIDVectorSet< Item, ItemIdentifierGetter > items
std::chrono::steady_clock Clock
Clock::time_point TimePoint
std::unique_ptr< T, DestructValueAtAddress< T > > destruct_ptr
uint64_t get_default_hash(const T &v, const Args &...args)
VectorSet< T, InlineBufferCapacity, DefaultProbingStrategy, CustomIDHash< T, GetIDFn >, CustomIDEqual< T, GetIDFn > > CustomIDVectorSet
std::variant< const bke::bNodeSocketType *, StringRefNull > type
const bke::bNodeSocketType * type
int closure_output_node_id
ComputeContextHash compute_context_hash
uint32_t orig_node_tree_session_uid
NamedAttributeUsage usage
StringRefNull attribute_name
destruct_ptr< ValueLog > value
destruct_ptr< ViewerNodeLog > viewer_log
std::optional< bke::AttrDomain > domain
std::optional< bke::AttrType > data_type
bool has_deformed_positions
Vector< std::string > layer_names
Vector< VolumeGridInfo > grids
NodeWarning(NodeWarningType type, StringRef message)
StringLog(StringRef string, LinearAllocator<> &allocator)
int operator()(const Item &item) const
bke::SocketValueVariant value