Blender V4.3
blender::nodes::AttributeIter Class Reference

#include <BKE_attribute.hh>

Public Member Functions

 AttributeIter (const StringRefNull name, const AttrDomain domain, const eCustomDataType data_type, const FunctionRef< GAttributeReader()> get_fn)
void stop () const
bool is_stopped () const
GAttributeReader get () const
GAttributeReader get (const AttrDomain domain) const
GAttributeReader get (const eCustomDataType data_type) const
template<typename T>
AttributeReader< Tget (const std::optional< AttrDomain > domain=std::nullopt) const
Attribute API
GAttributeReader get (std::optional< AttrDomain > domain, std::optional< eCustomDataType > data_type) const

Public Attributes

StringRefNull name
AttrDomain domain
eCustomDataType data_type
bool is_builtin = false
const AttributeAccessoraccessor = nullptr

Detailed Description

This is used when iterating over attributes, e.g. with #foreach_attribute. It contains meta-data for the current attribute and provides easy access to the actual attribute data.

Definition at line 394 of file BKE_attribute.hh.

Constructor & Destructor Documentation

◆ AttributeIter()

blender::bke::AttributeIter::AttributeIter ( const StringRefNull name,
const AttrDomain domain,
const eCustomDataType data_type,
const FunctionRef< GAttributeReader()> get_fn )
inline

Definition at line 407 of file BKE_attribute.hh.

Member Function Documentation

◆ get() [1/5]

GAttributeReader blender::bke::AttributeIter::get ( ) const
inline

Get read-only access to the current attribute. This method always succeeds.

Definition at line 427 of file BKE_attribute.hh.

◆ get() [2/5]

GAttributeReader blender::bke::AttributeIter::get ( const AttrDomain domain) const
inline

Definition at line 436 of file BKE_attribute.hh.

◆ get() [3/5]

GAttributeReader blender::bke::AttributeIter::get ( const eCustomDataType data_type) const
inline

Definition at line 441 of file BKE_attribute.hh.

◆ get() [4/5]

template<typename T>
AttributeReader< T > blender::bke::AttributeIter::get ( const std::optional< AttrDomain > domain = std::nullopt) const
inline

Definition at line 447 of file BKE_attribute.hh.

◆ get() [5/5]

GAttributeReader blender::bke::AttributeIter::get ( std::optional< AttrDomain > domain,
std::optional< eCustomDataType > data_type ) const

Same as above, but may perform type and domain interpolation. This may return none.

Definition at line 627 of file attribute_access.cc.

◆ is_stopped()

bool blender::bke::AttributeIter::is_stopped ( ) const
inline

Definition at line 421 of file BKE_attribute.hh.

◆ stop()

void blender::bke::AttributeIter::stop ( ) const
inline

Stops the iteration. Remaining attributes will be skipped.

Definition at line 416 of file BKE_attribute.hh.

Member Data Documentation

◆ accessor

const AttributeAccessor* blender::bke::AttributeIter::accessor = nullptr
mutable

Definition at line 400 of file BKE_attribute.hh.

◆ data_type

eCustomDataType blender::bke::AttributeIter::data_type

Definition at line 398 of file BKE_attribute.hh.

◆ domain

AttrDomain blender::bke::AttributeIter::domain

Definition at line 397 of file BKE_attribute.hh.

◆ is_builtin

bool blender::bke::AttributeIter::is_builtin = false

Definition at line 399 of file BKE_attribute.hh.

◆ name

StringRefNull blender::bke::AttributeIter::name

Definition at line 396 of file BKE_attribute.hh.


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