|
|
Go to the documentation of this file. 1 #ifndef PLUGINSYSTEM_REGISTRATION_MACROS_H 2 #define PLUGINSYSTEM_REGISTRATION_MACROS_H 30 #define INSTANTIATE_PROXY(record_, type_) template class DataProxyWrapper<record_, type_>; 32 #define ONLY_REGISTER_PLUGIN(record_, type_) \ 33 typedef DataProxyWrapper<record_, type_> EDM_PLUGIN_SYM(Proxy, __LINE__); \ 34 DEFINE_EDM_PLUGIN(cond::ProxyFactory, EDM_PLUGIN_SYM(Proxy, __LINE__), #record_ "@NewProxy") 36 #define REGISTER_PLUGIN(record_, type_) \ 37 INSTANTIATE_PROXY(record_, type_) \ 38 ONLY_REGISTER_PLUGIN(record_, type_) 40 #define INSTANTIATE_PROXY_INIT(record_, type_, initializer_) \ 41 template class DataProxyWrapper<record_, type_, initializer_>; 43 #define ONLY_REGISTER_PLUGIN_INIT(record_, type_, initializer_) \ 44 typedef DataProxyWrapper<record_, type_, initializer_> EDM_PLUGIN_SYM(Proxy, __LINE__); \ 45 DEFINE_EDM_PLUGIN(cond::ProxyFactory, EDM_PLUGIN_SYM(Proxy, __LINE__), #record_ "@NewProxy") 47 #define REGISTER_PLUGIN_INIT(record_, type_, initializer_) \ 48 INSTANTIATE_PROXY_INIT(record_, type_, initializer_) \ 49 ONLY_REGISTER_PLUGIN_INIT(record_, type_, initializer_) 52 #define REGISTER_KEYLIST_PLUGIN(record_, type_, source_) \ 53 template class DataProxyWrapper<record_, type_>; \ 54 struct EDM_PLUGIN_SYM(Proxy, record_) : public DataProxyWrapper<record_, type_> { \ 55 EDM_PLUGIN_SYM(Proxy, record_)() : DataProxyWrapper<record_, type_>(#source_){}; \ 57 DEFINE_EDM_PLUGIN(cond::ProxyFactory, EDM_PLUGIN_SYM(Proxy, record_), #record_ "@NewProxy")