|
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 592 of file uuid_identifiable_object.h.
| using zrythm::utils::UuidIdentifiableObjectView< RegistryT >::UuidRefType = UuidReference<RegistryT> |
Definition at line 598 of file uuid_identifiable_object.h.
| using zrythm::utils::UuidIdentifiableObjectView< RegistryT >::UuidType = typename RegistryT::UuidType |
Definition at line 596 of file uuid_identifiable_object.h.
| using zrythm::utils::UuidIdentifiableObjectView< RegistryT >::VariantType = typename RegistryT::VariantType |
Definition at line 597 of file uuid_identifiable_object.h.
|
inlineexplicit |
Constructor for direct object range.
Definition at line 778 of file uuid_identifiable_object.h.
|
inlineexplicit |
Constructor for UuidReference range.
Definition at line 784 of file uuid_identifiable_object.h.
|
inlineexplicit |
Constructor for Uuid + Registry.
Definition at line 790 of file uuid_identifiable_object.h.
|
inlineexplicit |
Single object constructor.
Definition at line 798 of file uuid_identifiable_object.h.
|
inline |
Definition at line 895 of file uuid_identifiable_object.h.
|
inline |
Definition at line 943 of file uuid_identifiable_object.h.
|
inline |
Definition at line 854 of file uuid_identifiable_object.h.
|
inline |
Definition at line 845 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 889 of file uuid_identifiable_object.h.
|
inline |
Definition at line 803 of file uuid_identifiable_object.h.
|
inline |
Definition at line 905 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 911 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 930 of file uuid_identifiable_object.h.
|
inline |
Definition at line 872 of file uuid_identifiable_object.h.
|
inline |
Definition at line 819 of file uuid_identifiable_object.h.
|
inline |
Definition at line 844 of file uuid_identifiable_object.h.
|
inline |
Definition at line 880 of file uuid_identifiable_object.h.
|
inline |
Definition at line 948 of file uuid_identifiable_object.h.
|
inline |
Definition at line 835 of file uuid_identifiable_object.h.
|
inline |
Definition at line 863 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 900 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 924 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 875 of file uuid_identifiable_object.h.