|
JUCE
|
Used internally by the Value class as the base class for its shared value objects. More...
#include <juce_Value.h>
Public Member Functions | |
| ValueSource () | |
| ~ValueSource () override | |
| virtual var | getValue () const =0 |
| Returns the current value of this object. | |
| virtual void | setValue (const var &newValue)=0 |
| Changes the current value. | |
| void | sendChangeMessage (bool dispatchSynchronously) |
| Delivers a change message to all the listeners that are registered with this value. | |
Public Member Functions inherited from ReferenceCountedObject | |
| void | incReferenceCount () noexcept |
| Increments the object's reference count. | |
| void | decReferenceCount () noexcept |
| Decreases the object's reference count. | |
| bool | decReferenceCountWithoutDeleting () noexcept |
| Decreases the object's reference count. | |
| int | getReferenceCount () const noexcept |
| Returns the object's current reference count. | |
Protected Attributes | |
| SortedSet< Value * > | valuesWithListeners |
Additional Inherited Members | |
Protected Member Functions inherited from ReferenceCountedObject | |
| ReferenceCountedObject ()=default | |
| Creates the reference-counted object (with an initial ref count of zero). | |
| ReferenceCountedObject (const ReferenceCountedObject &) noexcept | |
| Copying from another object does not affect this one's reference-count. | |
| ReferenceCountedObject (ReferenceCountedObject &&) noexcept | |
| Copying from another object does not affect this one's reference-count. | |
| ReferenceCountedObject & | operator= (const ReferenceCountedObject &) noexcept |
| Copying from another object does not affect this one's reference-count. | |
| ReferenceCountedObject & | operator= (ReferenceCountedObject &&) noexcept |
| Copying from another object does not affect this one's reference-count. | |
| virtual | ~ReferenceCountedObject () |
| Destructor. | |
| void | resetReferenceCount () noexcept |
| Resets the reference count to zero without deleting the object. | |
Used internally by the Value class as the base class for its shared value objects.
The Value class is essentially a reference-counted pointer to a shared instance of a ValueSource object. If you're feeling adventurous, you can create your own custom ValueSource classes to allow Value objects to represent your own custom data items.
| Value::ValueSource::ValueSource | ( | ) |
|
override |
|
pure virtual |
Returns the current value of this object.
|
pure virtual |
Changes the current value.
This must also trigger a change message if the value actually changes.
| void Value::ValueSource::sendChangeMessage | ( | bool | dispatchSynchronously | ) |
Delivers a change message to all the listeners that are registered with this value.
If dispatchSynchronously is true, the method will call all the listeners before returning; otherwise it'll dispatch a message and make the call later.