增加Log通用部分代码

This commit is contained in:
2019-08-23 17:54:42 +08:00
parent c5dca40260
commit 0552be7754
6 changed files with 349 additions and 9 deletions

View File

@@ -25,20 +25,23 @@ namespace hgl
/**
* 插件注册模板
*/
template<typename T> class RegistryPlugInProxy
template<typename T,typename CN> class RegistryPlugInProxy
{
SharedPtr<T> plugin;
T *plugin;
public:
RegistryPlugInProxy()
{
plugin=new T;
plugin=new CN;
}
virtual ~RegistryPlugInProxy()=default;
virtual ~RegistryPlugInProxy()
{
delete plugin;
}
T *get(){return *plugin;}
T *get(){return plugin;}
};//template<typename T> class RegistryPlugInProxy
/*
@@ -52,10 +55,10 @@ namespace hgl
*/
#ifndef __MAKE_PLUGIN__ //内部插件
#define REGISTRY_PLUG_IN(name,classname) static RegistryPlugInProxy<classname> plugin_proxy_##classname;
#define REGISTRY_PLUG_IN(name,classname) static RegistryPlugInProxy<name,classname> plugin_proxy_##classname; \
extern "C" void registry_plugin_##classname;
#else //外部插件
#define REGISTRY_PLUG_IN(name,classname)
static
#define REGISTRY_PLUG_IN(name,classname) static RegistryPlugInProxy<name,classname> plugin_proxy_##classname \
extern "C" void registry_plugin_##name(void)
{