Blender V4.3
blender::fn::multi_function::VariableState Class Reference

Inherits blender::NonCopyable, and blender::NonMovable.

Public Member Functions

void destruct_value (ValueAllocator &value_allocator, const DataType &data_type)
 
bool is_one () const
 
bool is_fully_initialized (const IndexMask &full_mask)
 
bool is_fully_uninitialized (const IndexMask &full_mask)
 
void add_as_input (ParamsBuilder &params, const IndexMask &mask, const DataType &data_type) const
 
void ensure_is_mutable (const IndexMask &full_mask, const DataType &data_type, ValueAllocator &value_allocator)
 
void add_as_mutable (ParamsBuilder &params, const IndexMask &mask, const IndexMask &full_mask, const DataType &data_type, ValueAllocator &value_allocator)
 
void add_as_output (ParamsBuilder &params, const IndexMask &mask, const IndexMask &full_mask, const DataType &data_type, ValueAllocator &value_allocator)
 
void add_as_input__one (ParamsBuilder &params, const DataType &data_type) const
 
void ensure_is_mutable__one (const DataType &data_type, ValueAllocator &value_allocator)
 
void add_as_mutable__one (ParamsBuilder &params, const DataType &data_type, ValueAllocator &value_allocator)
 
void add_as_output__one (ParamsBuilder &params, const IndexMask &mask, const DataType &data_type, ValueAllocator &value_allocator)
 
bool destruct (const IndexMask &mask, const IndexMask &full_mask, const DataType &data_type, ValueAllocator &value_allocator)
 
void indices_split (const IndexMask &mask, IndicesSplitVectors &r_indices)
 
template<typename T >
Tvalue_as ()
 
template<typename T >
const Tvalue_as () const
 

Public Attributes

VariableValuevalue_ = nullptr
 
int tot_initialized_ = 0
 
void * caller_provided_storage_ = nullptr
 

Detailed Description

This class keeps track of a single variable during evaluation.

Definition at line 305 of file multi_function_procedure_executor.cc.

Member Function Documentation

◆ add_as_input()

void blender::fn::multi_function::VariableState::add_as_input ( ParamsBuilder & params,
const IndexMask & mask,
const DataType & data_type ) const
inline

◆ add_as_input__one()

void blender::fn::multi_function::VariableState::add_as_input__one ( ParamsBuilder & params,
const DataType & data_type ) const
inline

◆ add_as_mutable()

void blender::fn::multi_function::VariableState::add_as_mutable ( ParamsBuilder & params,
const IndexMask & mask,
const IndexMask & full_mask,
const DataType & data_type,
ValueAllocator & value_allocator )
inline

◆ add_as_mutable__one()

◆ add_as_output()

◆ add_as_output__one()

◆ destruct()

bool blender::fn::multi_function::VariableState::destruct ( const IndexMask & mask,
const IndexMask & full_mask,
const DataType & data_type,
ValueAllocator & value_allocator )
inline

◆ destruct_value()

void blender::fn::multi_function::VariableState::destruct_value ( ValueAllocator & value_allocator,
const DataType & data_type )
inline

◆ ensure_is_mutable()

◆ ensure_is_mutable__one()

◆ indices_split()

◆ is_fully_initialized()

bool blender::fn::multi_function::VariableState::is_fully_initialized ( const IndexMask & full_mask)
inline

◆ is_fully_uninitialized()

bool blender::fn::multi_function::VariableState::is_fully_uninitialized ( const IndexMask & full_mask)
inline

◆ is_one()

bool blender::fn::multi_function::VariableState::is_one ( ) const
inline

◆ value_as() [1/2]

◆ value_as() [2/2]

template<typename T >
const T * blender::fn::multi_function::VariableState::value_as ( ) const
inline

Member Data Documentation

◆ caller_provided_storage_

void* blender::fn::multi_function::VariableState::caller_provided_storage_ = nullptr

◆ tot_initialized_

int blender::fn::multi_function::VariableState::tot_initialized_ = 0

◆ value_


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