|
Blender V4.3
|
#include <BLI_compute_context.hh>
Public Member Functions | |
| void | keep_old_contexts () |
| bool | is_empty () const |
| const ComputeContext * | current () const |
| const ComputeContextHash | hash () const |
| template<typename T , typename... Args> | |
| void | push (Args &&...args) |
| void | pop () |
| void | pop_until (const ComputeContext *context) |
Utility class to build a context stack in one place. This is typically used to get the hash that corresponds to a specific nested compute context, in order to look up corresponding logged values.
Definition at line 134 of file BLI_compute_context.hh.
|
inline |
Definition at line 157 of file BLI_compute_context.hh.
References blender::Stack< T, InlineBufferCapacity, Allocator >::is_empty(), and blender::Stack< T, InlineBufferCapacity, Allocator >::peek().
Referenced by blender::find_side_effect_nodes_for_nested_node(), blender::find_side_effect_nodes_for_viewer_path(), blender::ed::space_node::find_sockets_on_active_gizmo_paths(), blender::nodes::gizmos::foreach_active_gizmo_in_open_node_editor(), blender::nodes::gizmos::foreach_gizmo_for_input(), hash(), and push().
|
inline |
Definition at line 165 of file BLI_compute_context.hh.
References BLI_assert, current(), blender::ComputeContext::hash(), and blender::Stack< T, InlineBufferCapacity, Allocator >::is_empty().
Referenced by blender::nodes::geo_eval_log::find_tree_zone_hash_recursive(), blender::nodes::geo_eval_log::GeoModifierLog::find_viewer_node_log_for_path(), blender::ed::space_node::get_compute_context_hash_for_node_editor(), and blender::nodes::geo_eval_log::GeoModifierLog::get_context_hash_by_zone_for_node_editor().
|
inline |
Definition at line 152 of file BLI_compute_context.hh.
References blender::Stack< T, InlineBufferCapacity, Allocator >::is_empty().
|
inline |
If called, compute contexts are not destructed when they are popped. Instead their lifetime will be the lifetime of this builder.
Definition at line 145 of file BLI_compute_context.hh.
|
inline |
Definition at line 178 of file BLI_compute_context.hh.
References blender::Stack< T, InlineBufferCapacity, Allocator >::pop().
Referenced by blender::nodes::geo_eval_log::find_tree_zone_hash_recursive(), blender::nodes::gizmos::foreach_active_gizmo_exposed_to_modifier(), blender::nodes::gizmos::foreach_gizmo_for_input(), and pop_until().
|
inline |
Pops all compute contexts until the given one is at the top.
Definition at line 187 of file BLI_compute_context.hh.
References BLI_assert, blender::Stack< T, InlineBufferCapacity, Allocator >::is_empty(), blender::Stack< T, InlineBufferCapacity, Allocator >::peek(), and pop().
Referenced by blender::nodes::gizmos::foreach_active_gizmo_in_open_node_editor().
|
inline |
Definition at line 171 of file BLI_compute_context.hh.
References blender::LinearAllocator< Allocator >::construct(), current(), and blender::Stack< T, InlineBufferCapacity, Allocator >::push().
Referenced by blender::ed::viewer_path::add_compute_context_for_viewer_path_elem(), blender::find_side_effect_nodes_for_nested_node(), blender::find_side_effect_nodes_for_viewer_path(), blender::ed::geometry::find_socket_log_contexts(), blender::ed::space_node::find_sockets_on_active_gizmo_paths(), blender::nodes::geo_eval_log::find_tree_zone_hash_recursive(), blender::nodes::geo_eval_log::GeoModifierLog::find_viewer_node_log_for_path(), blender::nodes::gizmos::foreach_active_gizmo_exposed_to_modifier(), blender::nodes::gizmos::foreach_active_gizmo_in_open_node_editor(), blender::nodes::gizmos::foreach_gizmo_for_input(), blender::ed::space_node::get_compute_context_hash_for_node_editor(), blender::nodes::geo_eval_log::GeoModifierLog::get_context_hash_by_zone_for_node_editor(), blender::nodes::geo_eval_log::GeoModifierLog::get_tree_log_by_zone_for_node_editor(), and blender::ed::space_node::push_compute_context_for_tree_path().