|
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 628 of file uuid_identifiable_object.h.
| using zrythm::utils::UuidIdentifiableObjectView< RegistryT >::UuidRefType = UuidReference<RegistryT> |
Definition at line 634 of file uuid_identifiable_object.h.
| using zrythm::utils::UuidIdentifiableObjectView< RegistryT >::UuidType = typename RegistryT::UuidType |
Definition at line 632 of file uuid_identifiable_object.h.
| using zrythm::utils::UuidIdentifiableObjectView< RegistryT >::VariantType = typename RegistryT::VariantType |
Definition at line 633 of file uuid_identifiable_object.h.
|
inlineexplicit |
Constructor for direct object range.
Definition at line 814 of file uuid_identifiable_object.h.
|
inlineexplicit |
Constructor for UuidReference range.
Definition at line 820 of file uuid_identifiable_object.h.
|
inlineexplicit |
Constructor for Uuid + Registry.
Definition at line 826 of file uuid_identifiable_object.h.
|
inlineexplicit |
Single object constructor.
Definition at line 834 of file uuid_identifiable_object.h.
|
inline |
Definition at line 931 of file uuid_identifiable_object.h.
|
inline |
Definition at line 979 of file uuid_identifiable_object.h.
|
inline |
Definition at line 890 of file uuid_identifiable_object.h.
|
inline |
Definition at line 881 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 925 of file uuid_identifiable_object.h.
|
inline |
Definition at line 839 of file uuid_identifiable_object.h.
|
inline |
Definition at line 941 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 947 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 966 of file uuid_identifiable_object.h.
|
inline |
Definition at line 908 of file uuid_identifiable_object.h.
|
inline |
Definition at line 855 of file uuid_identifiable_object.h.
|
inline |
Definition at line 880 of file uuid_identifiable_object.h.
|
inline |
Definition at line 916 of file uuid_identifiable_object.h.
|
inline |
Definition at line 984 of file uuid_identifiable_object.h.
|
inline |
Definition at line 871 of file uuid_identifiable_object.h.
|
inline |
Definition at line 899 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 936 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 960 of file uuid_identifiable_object.h.
|
inlinestatic |
Definition at line 911 of file uuid_identifiable_object.h.