|
|
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_>;
33 #define ONLY_REGISTER_PLUGIN(record_,type_)\
34 typedef DataProxyWrapper<record_, type_> EDM_PLUGIN_SYM(Proxy , __LINE__ ); \
35 DEFINE_EDM_PLUGIN( cond::ProxyFactory, EDM_PLUGIN_SYM(Proxy , __LINE__ ), #record_ "@NewProxy")
37 #define REGISTER_PLUGIN(record_, type_ ) \
38 INSTANTIATE_PROXY(record_, type_ ) \
39 ONLY_REGISTER_PLUGIN(record_, type_ )
41 #define INSTANTIATE_PROXY_INIT(record_, type_, initializer_) 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_ )
54 #define REGISTER_KEYLIST_PLUGIN(record_, type_, source_) \
55 template class DataProxyWrapper<record_, type_>; \
56 struct EDM_PLUGIN_SYM(Proxy , record_ ) : public DataProxyWrapper<record_, type_> { EDM_PLUGIN_SYM(Proxy , record_ ) () : DataProxyWrapper<record_, type_>(#source_){};}; \
57 DEFINE_EDM_PLUGIN( cond::ProxyFactory, EDM_PLUGIN_SYM(Proxy , record_ ), #record_ "@NewProxy")