Blender  V3.3
Classes | Namespaces | Functions
field.cc File Reference
#include "BLI_index_mask_ops.hh"
#include "BLI_map.hh"
#include "BLI_multi_value_map.hh"
#include "BLI_set.hh"
#include "BLI_stack.hh"
#include "BLI_vector_set.hh"
#include "FN_field.hh"
#include "FN_multi_function_builder.hh"
#include "FN_multi_function_procedure.hh"
#include "FN_multi_function_procedure_builder.hh"
#include "FN_multi_function_procedure_executor.hh"
#include "FN_multi_function_procedure_optimization.hh"

Go to the source code of this file.

Classes

struct  blender::fn::FieldTreeInfo
 

Namespaces

 blender
 
 blender::fn
 

Functions

static FieldTreeInfo blender::fn::preprocess_field_tree (Span< GFieldRef > entry_fields)
 
static Vector< GVArray > blender::fn::get_field_context_inputs (ResourceScope &scope, const IndexMask mask, const FieldContext &context, const Span< std::reference_wrapper< const FieldInput >> field_inputs)
 
static Set< GFieldRef > blender::fn::find_varying_fields (const FieldTreeInfo &field_tree_info, Span< GVArray > field_context_inputs)
 
static void blender::fn::build_multi_function_procedure_for_fields (MFProcedure &procedure, ResourceScope &scope, const FieldTreeInfo &field_tree_info, Span< GFieldRef > output_fields)
 
Vector< GVArray > blender::fn::evaluate_fields (ResourceScope &scope, Span< GFieldRef > fields_to_evaluate, IndexMask mask, const FieldContext &context, Span< GVMutableArray > dst_varrays={})
 
static std::shared_ptr< const FieldInputs > blender::fn::combine_field_inputs (Span< GField > fields)
 
static IndexMask blender::fn::index_mask_from_selection (const IndexMask full_mask, const VArray< bool > &selection, ResourceScope &scope)
 
static IndexMask blender::fn::evaluate_selection (const Field< bool > &selection_field, const FieldContext &context, IndexMask full_mask, ResourceScope &scope)
 
Utility functions for simple field creation and evaluation
void blender::fn::evaluate_constant_field (const GField &field, void *r_value)
 
GField blender::fn::make_field_constant_if_possible (GField field)
 
Field< boolblender::fn::invert_boolean_field (const Field< bool > &field)
 
GField blender::fn::make_constant_field (const CPPType &type, const void *value)