|
LMMS
|
#include <juce_Singleton.h>
Public Member Functions | |
| SingletonHolder ()=default | |
| ~SingletonHolder () | |
| Type * | get () |
| Type * | getWithoutChecking () |
| void | deleteInstance () |
| void | clear (Type *expectedObject) noexcept |
Public Attributes | |
| std::atomic< Type * > | instance { nullptr } |
Used by the JUCE_DECLARE_SINGLETON macros to manage a static pointer to a singleton instance.
You generally won't use this directly, but see the macros JUCE_DECLARE_SINGLETON, JUCE_DECLARE_SINGLETON_SINGLETHREADED, JUCE_DECLARE_SINGLETON_SINGLETHREADED_MINIMAL, and JUCE_IMPLEMENT_SINGLETON for how it is intended to be used.
@tags{Core}
|
default |
|
inline |
|
inlinenoexcept |
Called by the class's destructor to clear the pointer if it is currently set to the given object.
|
inline |
Deletes and resets the current instance, if there is one.
|
inline |
Returns the current instance, or creates a new instance if there isn't one.
|
inline |
Returns the current instance, or creates a new instance if there isn't one, but doesn't do any locking, or checking for recursion or error conditions.
| std::atomic<Type*> juce::SingletonHolder< Type, MutexType, onlyCreateOncePerRun >::instance { nullptr } |