Blender  V3.3
Public Member Functions | List of all members
blender::fn::ValueAllocator Class Reference
Inheritance diagram for blender::fn::ValueAllocator:
blender::NonCopyable blender::NonMovable

Public Member Functions

 ValueAllocator (LinearAllocator<> &linear_allocator)
 
VariableValue_GVArrayobtain_GVArray (const GVArray &varray)
 
VariableValue_GVVectorArrayobtain_GVVectorArray (const GVVectorArray &varray)
 
VariableValue_Spanobtain_Span_not_owned (void *buffer)
 
VariableValue_Spanobtain_Span (const CPPType &type, int size)
 
VariableValue_GVectorArrayobtain_GVectorArray_not_owned (GVectorArray &data)
 
VariableValue_GVectorArrayobtain_GVectorArray (const CPPType &type, int size)
 
VariableValue_OneSingleobtain_OneSingle (const CPPType &type)
 
VariableValue_OneVectorobtain_OneVector (const CPPType &type)
 
void release_value (VariableValue *value, const MFDataType &data_type)
 

Detailed Description

The ValueAllocator is responsible for providing memory for variables and their values. It also manages the reuse of buffers to improve performance.

Definition at line 126 of file multi_function_procedure_executor.cc.

Constructor & Destructor Documentation

◆ ValueAllocator()

blender::fn::ValueAllocator::ValueAllocator ( LinearAllocator<> &  linear_allocator)
inline

Definition at line 157 of file multi_function_procedure_executor.cc.

Member Function Documentation

◆ obtain_GVArray()

VariableValue_GVArray* blender::fn::ValueAllocator::obtain_GVArray ( const GVArray varray)
inline

◆ obtain_GVectorArray()

VariableValue_GVectorArray* blender::fn::ValueAllocator::obtain_GVectorArray ( const CPPType type,
int  size 
)
inline

Definition at line 210 of file multi_function_procedure_executor.cc.

References size(), and type.

Referenced by blender::fn::VariableState::ensure_is_mutable().

◆ obtain_GVectorArray_not_owned()

VariableValue_GVectorArray* blender::fn::ValueAllocator::obtain_GVectorArray_not_owned ( GVectorArray data)
inline

◆ obtain_GVVectorArray()

VariableValue_GVVectorArray* blender::fn::ValueAllocator::obtain_GVVectorArray ( const GVVectorArray varray)
inline

◆ obtain_OneSingle()

VariableValue_OneSingle* blender::fn::ValueAllocator::obtain_OneSingle ( const CPPType type)
inline

◆ obtain_OneVector()

VariableValue_OneVector* blender::fn::ValueAllocator::obtain_OneVector ( const CPPType type)
inline

◆ obtain_Span()

VariableValue_Span* blender::fn::ValueAllocator::obtain_Span ( const CPPType type,
int  size 
)
inline

◆ obtain_Span_not_owned()

VariableValue_Span* blender::fn::ValueAllocator::obtain_Span_not_owned ( void buffer)
inline

◆ release_value()

void blender::fn::ValueAllocator::release_value ( VariableValue value,
const MFDataType data_type 
)
inline

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