1#ifndef H_EXTENSIONS_CUTEHMI_2_INCLUDE_CUTEHMI_SINGLETON_HPP
2#define H_EXTENSIONS_CUTEHMI_2_INCLUDE_CUTEHMI_SINGLETON_HPP
4#include "NonCopyable.hpp"
5#include "NonMovable.hpp"
6#include "internal/common.hpp"
7#include "internal/singleton.hpp"
123 static C * instancePtr = InstancePtr().get();
137 InstancePtr().reset();
Non-copyable object.
Definition: NonCopyable.hpp:10
Non-movable object.
Definition: NonMovable.hpp:10
Singleton template.
Definition: Singleton.hpp:32
virtual ~Singleton()
Destructor.
Definition: Singleton.hpp:110
static std::unique_ptr< C > & InstancePtr()
Get instance pointer.
Definition: Singleton.hpp:141
static void Destroy()
Destroy instance.
Definition: Singleton.hpp:129
Singleton()
Default constructor.
Definition: Singleton.hpp:104
static C & Instance()
Get instance.
Definition: Singleton.hpp:116
CUTEHMI_API void removeSingletonDestroyCallback(singletonDestroyCallback callback)
Definition: singleton.cpp:80
CUTEHMI_API void storeSingletonDestroyCallback(singletonDestroyCallback callback)
Definition: singleton.cpp:70
Definition: constants.hpp:6
CUTEHMI_API void destroySingletonInstances()
Destroy singleton instances.
Definition: Singleton.cpp:5