AusweisApp2/src/global/SingletonHelper.h

26 lines
539 B
C
Raw Normal View History

2017-07-03 09:30:10 +02:00
/*
* \brief Helper to introduce a Singleton.
* Be aware to use this helper in .cpp file only!
*
2018-03-28 15:10:51 +02:00
* \copyright Copyright (c) 2016-2018 Governikus GmbH & Co. KG, Germany
2017-07-03 09:30:10 +02:00
*/
#pragma once
#include <QGlobalStatic>
#define defineSingletonInstance(className, instanceName)\
namespace\
{\
class Singleton##className final\
: public className\
{\
public:\
using className::className;\
};\
}\
\
Q_GLOBAL_STATIC(Singleton##className, instanceName)
#define defineSingleton(className) defineSingletonInstance(className, Instance)