p26001-store-acs-soc-fw-app/video/core/System.h
2026-09-28 21:33:04 +08:00

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