Follows the Meyers singleton pattern, allowing thread-safe access to singleton object.
 
virtual ~Singleton()=default
Destroy the Singleton object.
 
Singleton & operator=(const Singleton &)=delete
Overloaded = (disabled)
 
static Singleton & getInstance()
Get the Instance object.
 
Singleton()=default
Construct a new Singleton object.