|
Blender V5.0
|
#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 *owner, 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 |
| GPointer | default_value () 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 41 of file attribute_access_intern.hh.
| Enumerator | |
|---|---|
| Deletable | |
| NonDeletable | |
Definition at line 43 of file attribute_access_intern.hh.
|
inline |
Definition at line 57 of file attribute_access_intern.hh.
References data_type(), domain(), name(), and validator().
|
inline |
Definition at line 88 of file attribute_access_intern.hh.
References data_type_.
Referenced by BuiltinAttributeProvider(), and blender::bke::BuiltinCustomDataLayerProvider::BuiltinCustomDataLayerProvider().
|
inline |
Definition at line 98 of file attribute_access_intern.hh.
References default_value_.
|
inline |
Definition at line 83 of file attribute_access_intern.hh.
References domain_.
Referenced by BuiltinAttributeProvider(), and blender::bke::BuiltinCustomDataLayerProvider::BuiltinCustomDataLayerProvider().
|
pure virtual |
Implemented in blender::bke::BuiltinCustomDataLayerProvider.
|
inline |
Definition at line 78 of file attribute_access_intern.hh.
References name_.
Referenced by BuiltinAttributeProvider().
|
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 93 of file attribute_access_intern.hh.
References validator_.
Referenced by BuiltinAttributeProvider(), blender::bke::BuiltinCustomDataLayerProvider::BuiltinCustomDataLayerProvider(), and blender::bke::attribute_accessor_functions::lookup_validator().
|
protected |
Definition at line 51 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 54 of file attribute_access_intern.hh.
Referenced by default_value(), and blender::bke::BuiltinCustomDataLayerProvider::try_create().
|
protected |
Definition at line 52 of file attribute_access_intern.hh.
Referenced by blender::bke::BuiltinCustomDataLayerProvider::try_delete().
|
protected |
Definition at line 50 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 49 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 53 of file attribute_access_intern.hh.
Referenced by validator().