|
Zrythm v2.0.0-DEV
a highly automated and intuitive digital audio workstation
|
A unified view over UUID-identified objects that supports: More...
#include <src/utils/uuid_identifiable_object.h>


Data Structures | |
| class | Iterator |
Public Types | |
| using | UuidType = typename RegistryT::UuidType |
| using | VariantType = typename RegistryT::VariantType |
| using | UuidRefType = UuidReference<RegistryT> |
Public Member Functions | |
| UuidIdentifiableObjectView (std::span< const VariantType > objects) | |
| Constructor for direct object range. | |
| UuidIdentifiableObjectView (std::span< const UuidRefType > refs) | |
| Constructor for UuidReference range. | |
| UuidIdentifiableObjectView (const RegistryT ®istry, std::span< const UuidType > uuids) | |
| Constructor for Uuid + Registry. | |
| UuidIdentifiableObjectView (const VariantType &obj) | |
| Single object constructor. | |
| Iterator | begin () const |
| Iterator | end () const |
| VariantType | operator[] (size_t index) const |
| VariantType | front () const |
| VariantType | back () const |
| VariantType | at (size_t index) const |
| size_t | size () const |
| bool | empty () const |
| template<typename T> | |
| auto | get_elements_by_type () const |
| auto | as_base_type () const |
| template<typename T> | |
| bool | contains_type () const |
| template<typename T> | |
| auto | as_type () const |
| template<typename T> | |
| auto | get_elements_derived_from () const |
Static Public Member Functions | |
| static UuidType | uuid_projection (const VariantType &var) |
| static RegistryT::BaseType * | base_projection (const VariantType &var) |
| template<typename T> | |
| static auto | type_projection (const VariantType &var) |
| template<typename BaseType> | |
| static auto | derived_from_type_projection (const VariantType &var) |
| template<typename T> | |
| static auto | type_transformation (const VariantType &var) |
| template<typename T> | |
| static auto | derived_from_type_transformation (const VariantType &var) |
A unified view over UUID-identified objects that supports:
Definition at line 586 of file uuid_identifiable_object.h.
| using zrythm::utils::UuidIdentifiableObjectView< RegistryT >::UuidRefType = UuidReference<RegistryT> |
Definition at line 592 of file uuid_identifiable_object.h.
| using zrythm::utils::UuidIdentifiableObjectView< RegistryT >::UuidType = typename RegistryT::UuidType |
Definition at line 590 of file uuid_identifiable_object.h.
| using zrythm::utils::UuidIdentifiableObjectView< RegistryT >::VariantType = typename RegistryT::VariantType |
Definition at line 591 of file uuid_identifiable_object.h.
|
inlineexplicit |
Constructor for direct object range.
Definition at line 772 of file uuid_identifiable_object.h.
|
inlineexplicit |
Constructor for UuidReference range.
Definition at line 778 of file uuid_identifiable_object.h.
|
inlineexplicit |
Constructor for Uuid + Registry.
Definition at line 784 of file uuid_identifiable_object.h.
|
inlineexplicit |
Single object constructor.
Definition at line 792 of file uuid_identifiable_object.h.
|
inline |
Definition at line 889 of file uuid_identifiable_object.h.
|
inline |
Definition at line 937 of file uuid_identifiable_object.h.
|
inline |
Definition at line 848 of file uuid_identifiable_object.h.
|
inline |
Definition at line 839 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 883 of file uuid_identifiable_object.h.
|
inline |
Definition at line 797 of file uuid_identifiable_object.h.
|
inline |
Definition at line 899 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 905 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 924 of file uuid_identifiable_object.h.
|
inline |
Definition at line 866 of file uuid_identifiable_object.h.
|
inline |
Definition at line 813 of file uuid_identifiable_object.h.
|
inline |
Definition at line 838 of file uuid_identifiable_object.h.
|
inline |
Definition at line 874 of file uuid_identifiable_object.h.
|
inline |
Definition at line 942 of file uuid_identifiable_object.h.
|
inline |
Definition at line 829 of file uuid_identifiable_object.h.
|
inline |
Definition at line 857 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 894 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 918 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 869 of file uuid_identifiable_object.h.