Blender
V3.3
|
Public Attributes | |
std::atomic< int > | refcount_tot = 0 |
std::atomic< int > | refcount_strong = 0 |
std::string | debug_name |
std::string | internal_name |
A struct that identifies an attribute. It's lifetime is managed by an atomic reference count.
Additionally, this struct can be strongly or weakly owned. The difference is that strong ownership means that attributes with this id will be kept around. Weak ownership just makes sure that the struct itself stays alive, but corresponding attributes might still be removed automatically.
Definition at line 15 of file anonymous_attribute.cc.
std::string AnonymousAttributeID::debug_name |
Only used to identify this struct in a debugging session.
Definition at line 31 of file anonymous_attribute.cc.
Referenced by BKE_anonymous_attribute_id_debug_name(), BKE_anonymous_attribute_id_new_strong(), and BKE_anonymous_attribute_id_new_weak().
std::string AnonymousAttributeID::internal_name |
Unique name of the this attribute id during the current session.
Definition at line 36 of file anonymous_attribute.cc.
Referenced by BKE_anonymous_attribute_id_internal_name(), BKE_anonymous_attribute_id_new_strong(), and BKE_anonymous_attribute_id_new_weak().
|
mutable |
Number of strong references to this attribute id. When this is zero, the corresponding attributes can be removed from geometries automatically.
Definition at line 26 of file anonymous_attribute.cc.
Referenced by BKE_anonymous_attribute_id_decrement_strong(), BKE_anonymous_attribute_id_decrement_weak(), BKE_anonymous_attribute_id_has_strong_references(), BKE_anonymous_attribute_id_increment_strong(), and BKE_anonymous_attribute_id_new_strong().
|
mutable |
Total number of references to this attribute id. Once this reaches zero, the struct can be freed. This includes strong and weak references.
Definition at line 20 of file anonymous_attribute.cc.
Referenced by BKE_anonymous_attribute_id_decrement_weak(), BKE_anonymous_attribute_id_increment_strong(), BKE_anonymous_attribute_id_increment_weak(), BKE_anonymous_attribute_id_new_strong(), and BKE_anonymous_attribute_id_new_weak().