Blender V5.0
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()

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

◆ add_as_output()

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

◆ add_as_output__one()

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

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

void blender::fn::multi_function::VariableState::indices_split ( const IndexMask & mask,
IndicesSplitVectors & r_indices )
inline

◆ 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]

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

◆ value_as() [2/2]

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

Definition at line 805 of file multi_function_procedure_executor.cc.

References BLI_assert, T, and value_.

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: