Class uipc::geometry::IAttributeSlot
ClassList > uipc > geometry > IAttributeSlot
An abstract class to represent a geometries attribute slot in a geometries attribute collection.
#include <attribute_slot.h>
Inherited by the following classes: uipc::geometry::AttributeSlot
Public Functions
Type | Name |
---|---|
IAttributeSlot () = default |
|
IAttributeSlot (const IAttributeSlot &) = delete |
|
IAttributeSlot (IAttributeSlot &&) noexcept |
|
bool | allow_destroy () noexcept const Check if the underlying attribute is allowed to be destroyed. |
bool | is_shared () noexcept const Check if the underlying attribute is shared. |
std::string_view | name () noexcept const Get the name of the attribute slot. |
IAttributeSlot & | operator= (const IAttributeSlot &) = delete |
IAttributeSlot & | operator= (IAttributeSlot &&) noexcept |
SizeT | size () noexcept const |
Json | to_json (SizeT i) const |
Json | to_json () const |
std::string_view | type_name () noexcept const Get the type name of data stored in the attribute slot. |
virtual | ~IAttributeSlot () = default |
Protected Functions
Type | Name |
---|---|
virtual IAttribute & | attribute () noexcept |
virtual const IAttribute & | attribute () noexcept const |
virtual S< IAttributeSlot > | clone (std::string_view name, bool allow_destroy) const |
virtual S< IAttributeSlot > | clone_empty (std::string_view name, bool allow_destroy) const |
virtual S< IAttributeSlot > | do_clone (std::string_view name, bool allow_destroy) const = 0 |
virtual S< IAttributeSlot > | do_clone_empty (std::string_view name, bool allow_destroy) const = 0 |
virtual void | do_make_owned () = 0 |
virtual Json | do_to_json (SizeT i) const = 0 |
virtual bool | get_allow_destroy () noexcept const = 0 |
virtual IAttribute & | get_attribute () noexcept = 0 |
virtual const IAttribute & | get_attribute () noexcept const = 0 |
virtual std::string_view | get_name () noexcept const = 0 |
virtual std::string_view | get_type_name () noexcept const = 0 |
virtual SizeT | get_use_count () const = 0 |
void | make_owned () |
SizeT | use_count () const |
Public Functions Documentation
function IAttributeSlot [1/3]
function IAttributeSlot [2/3]
function IAttributeSlot [3/3]
function allow_destroy
function is_shared
Check if the underlying attribute is shared.
Returns:
true, if the underlying attribute is shared, more than one geometries reference to the underlying attribute.
Returns:
false, if the underlying attribute is owned, only this geometries reference to the underlying attribute.
function name
function operator=
function operator=
function size
function to_json [1/2]
function to_json [2/2]
function type_name
function ~IAttributeSlot
Protected Functions Documentation
function attribute [1/2]
function attribute [2/2]
function clone
virtual S< IAttributeSlot > uipc::geometry::IAttributeSlot::clone (
std::string_view name,
bool allow_destroy
) const
function clone_empty
virtual S< IAttributeSlot > uipc::geometry::IAttributeSlot::clone_empty (
std::string_view name,
bool allow_destroy
) const
function do_clone
virtual S< IAttributeSlot > uipc::geometry::IAttributeSlot::do_clone (
std::string_view name,
bool allow_destroy
) const = 0
function do_clone_empty
virtual S< IAttributeSlot > uipc::geometry::IAttributeSlot::do_clone_empty (
std::string_view name,
bool allow_destroy
) const = 0
function do_make_owned
function do_to_json
function get_allow_destroy
function get_attribute [1/2]
function get_attribute [2/2]
function get_name
function get_type_name
function get_use_count
function make_owned
function use_count
Friends Documentation
friend AttributeFriend
friend backend_view
backend::BufferView uipc::geometry::IAttributeSlot::backend_view (
const IAttributeSlot &
) noexcept
The documentation for this class was generated from the following file include/uipc/geometry/attribute_slot.h