Blender  V2.93
Public Member Functions | List of all members
blender::bke::BuiltinCustomDataLayerProvider Class Referencefinal

#include <attribute_access_intern.hh>

Inherits blender::bke::BuiltinAttributeProvider.

Public Member Functions

 BuiltinCustomDataLayerProvider (std::string attribute_name, const AttributeDomain domain, const CustomDataType attribute_type, const CustomDataType stored_type, const CreatableEnum creatable, const WritableEnum writable, const DeletableEnum deletable, const CustomDataAccessInfo custom_data_access, const AsReadAttribute as_read_attribute, const AsWriteAttribute as_write_attribute, const UpdateOnWrite update_on_write)
 
ReadAttributePtr try_get_for_read (const GeometryComponent &component) const final
 
WriteAttributePtr try_get_for_write (GeometryComponent &component) const final
 
bool try_delete (GeometryComponent &component) const final
 
bool try_create (GeometryComponent &component) const final
 
bool exists (const GeometryComponent &component) const final
 
- Public Member Functions inherited from blender::bke::BuiltinAttributeProvider
 BuiltinAttributeProvider (std::string name, const AttributeDomain domain, const CustomDataType data_type, const CreatableEnum createable, const WritableEnum writable, const DeletableEnum deletable)
 
virtual bool try_create (GeometryComponent &UNUSED(component)) const =0
 
StringRefNull name () const
 
AttributeDomain domain () const
 
CustomDataType data_type () const
 

Additional Inherited Members

- Public Types inherited from blender::bke::BuiltinAttributeProvider
enum  CreatableEnum { Creatable , NonCreatable }
 
enum  WritableEnum { Writable , Readonly }
 
enum  DeletableEnum { Deletable , NonDeletable }
 
- Protected Attributes inherited from blender::bke::BuiltinAttributeProvider
const std::string name_
 
const AttributeDomain domain_
 
const CustomDataType data_type_
 
const CreatableEnum createable_
 
const WritableEnum writable_
 
const DeletableEnum deletable_
 

Detailed Description

This provider is used to provide access to builtin attributes. It supports making internal types available as different types. For example, the vertex position attribute is stored as part of the MVert struct, but is exposed as float3 attribute.

Definition at line 400 of file attribute_access_intern.hh.

Constructor & Destructor Documentation

◆ BuiltinCustomDataLayerProvider()

blender::bke::BuiltinCustomDataLayerProvider::BuiltinCustomDataLayerProvider ( std::string  attribute_name,
const AttributeDomain  domain,
const CustomDataType  attribute_type,
const CustomDataType  stored_type,
const CreatableEnum  creatable,
const WritableEnum  writable,
const DeletableEnum  deletable,
const CustomDataAccessInfo  custom_data_access,
const AsReadAttribute  as_read_attribute,
const AsWriteAttribute  as_write_attribute,
const UpdateOnWrite  update_on_write 
)
inline

Definition at line 412 of file attribute_access_intern.hh.

Member Function Documentation

◆ exists()

bool blender::bke::BuiltinCustomDataLayerProvider::exists ( const GeometryComponent component) const
finalvirtual

◆ try_create()

bool blender::bke::BuiltinCustomDataLayerProvider::try_create ( GeometryComponent component) const
final

◆ try_delete()

bool blender::bke::BuiltinCustomDataLayerProvider::try_delete ( GeometryComponent component) const
finalvirtual

◆ try_get_for_read()

ReadAttributePtr blender::bke::BuiltinCustomDataLayerProvider::try_get_for_read ( const GeometryComponent component) const
finalvirtual

◆ try_get_for_write()

WriteAttributePtr blender::bke::BuiltinCustomDataLayerProvider::try_get_for_write ( GeometryComponent component) const
finalvirtual

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