|
HikoGUI
A low latency retained GUI
|
Public Member Functions | |
| observable_value (T const &value) noexcept | |
| virtual T | load () const noexcept override |
| Get the current value. | |
| virtual bool | store (T const &new_value) noexcept override |
| Set the value. | |
Public Member Functions inherited from tt::detail::observable_base< T > | |
| observable_base (observable_base const &)=delete | |
| observable_base (observable_base &&)=delete | |
| observable_base & | operator= (observable_base const &)=delete |
| observable_base & | operator= (observable_base &&)=delete |
| observable_base () noexcept | |
| Constructor. | |
| T | previous_value () const noexcept |
| Get the previous value. | |
| time_point | time_when_last_modified () const noexcept |
| Time when the value was modified last. | |
| duration | duration_since_last_modified () const noexcept |
| Duration since the value was last modified. | |
| float | animation_progress (duration animation_duration) const noexcept |
| The relative time since the start of the animation. | |
| T | load (duration animation_duration) const noexcept |
| Get the current value animated over the animation_duration. | |
| size_t | add_callback (callback_type callback) noexcept |
| Add a callback as a listener. | |
| void | remove_callback (size_t id) noexcept |
| Remove a callback. | |
Additional Inherited Members | |
Public Types inherited from tt::detail::observable_base< T > | |
| using | callback_type = std::function<void(T const &)> |
| using | time_point = typename hires_utc_clock::time_point |
| using | duration = typename hires_utc_clock::duration |
|
inlineoverridevirtualnoexcept |
Get the current value.
The value is often calculated directly from the cached values retrieved from notifications down the chain.
Implements tt::detail::observable_base< T >.
|
inlineoverridevirtualnoexcept |
Set the value.
The value is often not directly stored, but instead forwarded up the chain of observables. And then let the notifications flowing backward updated the cached values so that loads() will be quick.
| new_value | The new value |
Implements tt::detail::observable_base< T >.