|
Blender V4.3
|
#include <attribute_access_intern.hh>
Inherited by blender::bke::BuiltinCustomDataLayerProvider.
Public Types | |
| enum | DeletableEnum { Deletable , NonDeletable } |
Public Member Functions | |
| BuiltinAttributeProvider (std::string name, const AttrDomain domain, const eCustomDataType data_type, const DeletableEnum deletable, AttributeValidator validator={}, const GPointer default_value={}) | |
| virtual GAttributeReader | try_get_for_read (const void *owner) const =0 |
| virtual GAttributeWriter | try_get_for_write (void *owner) const =0 |
| virtual bool | try_delete (void *owner) const =0 |
| virtual bool | try_create (void *onwer, const AttributeInit &initializer) const =0 |
| virtual bool | exists (const void *owner) const =0 |
| StringRefNull | name () const |
| AttrDomain | domain () const |
| eCustomDataType | data_type () const |
| AttributeValidator | validator () const |
Protected Attributes | |
| const std::string | name_ |
| const AttrDomain | domain_ |
| const eCustomDataType | data_type_ |
| const DeletableEnum | deletable_ |
| const AttributeValidator | validator_ |
| const GPointer | default_value_ |
A BuiltinAttributeProvider is responsible for exactly one attribute on a geometry component. The attribute is identified by its name and has a fixed domain and type. Builtin attributes do not follow the same loose rules as other attributes, because they are mapped to internal "legacy" data structures. For example, some builtin attributes cannot be deleted.
Definition at line 37 of file attribute_access_intern.hh.
| Enumerator | |
|---|---|
| Deletable | |
| NonDeletable | |
Definition at line 39 of file attribute_access_intern.hh.
|
inline |
Definition at line 53 of file attribute_access_intern.hh.
|
inline |
Definition at line 84 of file attribute_access_intern.hh.
References data_type_.
|
inline |
Definition at line 79 of file attribute_access_intern.hh.
References domain_.
|
pure virtual |
Implemented in blender::bke::BuiltinCustomDataLayerProvider.
|
inline |
Definition at line 74 of file attribute_access_intern.hh.
References name_.
|
pure virtual |
Implemented in blender::bke::BuiltinCustomDataLayerProvider.
|
pure virtual |
Implemented in blender::bke::BuiltinCustomDataLayerProvider.
|
pure virtual |
Implemented in blender::bke::BuiltinCustomDataLayerProvider.
|
pure virtual |
Implemented in blender::bke::BuiltinCustomDataLayerProvider.
|
inline |
Definition at line 89 of file attribute_access_intern.hh.
References validator_.
Referenced by blender::bke::attribute_accessor_functions::lookup_validator().
|
protected |
Definition at line 47 of file attribute_access_intern.hh.
Referenced by data_type(), blender::bke::BuiltinCustomDataLayerProvider::exists(), blender::bke::BuiltinCustomDataLayerProvider::try_create(), blender::bke::BuiltinCustomDataLayerProvider::try_get_for_read(), and blender::bke::BuiltinCustomDataLayerProvider::try_get_for_write().
|
protected |
Definition at line 50 of file attribute_access_intern.hh.
Referenced by blender::bke::BuiltinCustomDataLayerProvider::try_create().
|
protected |
Definition at line 48 of file attribute_access_intern.hh.
Referenced by blender::bke::BuiltinCustomDataLayerProvider::try_delete().
|
protected |
Definition at line 46 of file attribute_access_intern.hh.
Referenced by domain(), blender::bke::BuiltinCustomDataLayerProvider::try_get_for_read(), and blender::bke::BuiltinCustomDataLayerProvider::try_get_for_write().
|
protected |
Definition at line 45 of file attribute_access_intern.hh.
Referenced by blender::bke::BuiltinCustomDataLayerProvider::exists(), name(), blender::bke::BuiltinCustomDataLayerProvider::try_create(), blender::bke::BuiltinCustomDataLayerProvider::try_delete(), blender::bke::BuiltinCustomDataLayerProvider::try_get_for_read(), and blender::bke::BuiltinCustomDataLayerProvider::try_get_for_write().
|
protected |
Definition at line 49 of file attribute_access_intern.hh.
Referenced by validator().