45 lines
941 B
C++
45 lines
941 B
C++
#ifndef BC5898D8_C525_4FD9_9609_B2112CB1BE92
|
|
#define BC5898D8_C525_4FD9_9609_B2112CB1BE92
|
|
/*
|
|
*******************************************************************************
|
|
* INCLUDE
|
|
*******************************************************************************
|
|
*/
|
|
#include <Poco/Poco.h>
|
|
|
|
namespace Video
|
|
{
|
|
namespace Core
|
|
{
|
|
/*
|
|
*******************************************************************************
|
|
* CLASS DECLARE
|
|
*******************************************************************************
|
|
*/
|
|
class System
|
|
{
|
|
protected:
|
|
System();
|
|
|
|
public:
|
|
virtual ~System();
|
|
|
|
public:
|
|
static uint64_t timestamp();
|
|
|
|
template <class T> static void registerClass();
|
|
|
|
protected:
|
|
virtual uint64_t getTimestamp() = 0;
|
|
|
|
private:
|
|
static System* _pInstance;
|
|
};
|
|
|
|
template <class T> inline void System::registerClass()
|
|
{
|
|
_pInstance = new T();
|
|
}
|
|
}
|
|
}
|
|
#endif
|