|
HikoGUI
A low latency retained GUI
|
#include <hikogui/observable.hpp>
Data Structures | |
| struct | const_proxy_type |
| struct | proxy_type |
Public Types | |
| using | value_type = T |
| using | owner_type = observable<value_type> |
Public Member Functions | |
| observable_impl (observable_impl const &)=delete | |
| observable_impl (observable_impl &&)=delete | |
| observable_impl & | operator= (observable_impl const &)=delete |
| observable_impl & | operator= (observable_impl &&)=delete |
| observable_impl (std::convertible_to< value_type > auto &&value) noexcept | |
| proxy_type | proxy () noexcept |
| const_proxy_type | const_proxy () noexcept |
| void | notify_owners () const noexcept |
| void | add_owner (owner_type &owner) noexcept |
| Add an observer as one of the owners of the shared-value. | |
| void | remove_owner (owner_type &owner) noexcept |
| Remove an observer as one of the owners of the shared-value. | |
| void | reseat_owners (std::shared_ptr< observable_impl > const &new_impl) noexcept |
Data Fields | |
| value_type | value |
| std::vector< owner_type * > | owners |
| size_t | ro_count = 0 |
| bool | rw_count = false |
The shared value, shared between observers.
|
inlinenoexcept |
Add an observer as one of the owners of the shared-value.
| owner | A reference to observer |
|
inlinenoexcept |
Remove an observer as one of the owners of the shared-value.
| owner | A reference to observer |