Go to the source code of this file.
Classes |
| class | PDevicePluginFactory< AbstractClass, KeyType > |
| class | PDevicePluginFactory< AbstractClass, KeyType >::Worker |
| class | PDevicePluginAdapterBase |
| class | PDevicePluginAdapter< DeviceBase > |
| class | PPluginServiceDescriptor |
| class | PDevicePluginServiceDescriptor |
| class | PPluginService |
Defines |
| #define | PWLIB_PLUGIN_API_VERSION 0 |
| #define | PCREATE_PLUGIN_REGISTERER(serviceName, serviceType, descriptor) |
| #define | PCREATE_PLUGIN_STATIC(serviceName, serviceType, descriptor) |
| #define | PPLUGIN_STATIC_LOAD(serviceName, serviceType) |
| #define | P_FORCE_STATIC_PLUGIN 1 |
| #define | PCREATE_PLUGIN(serviceName, serviceType, descriptor) PCREATE_PLUGIN_STATIC(serviceName, serviceType, descriptor) |
Define Documentation
Value:class PPlugin_##serviceType##_##serviceName##_Registration { \
public: \
PPlugin_##serviceType##_##serviceName##_Registration(PPluginManager * pluginMgr) \
{ \
static PDevicePluginFactory<serviceType>::Worker factory(#serviceName); \
pluginMgr->RegisterService(#serviceName, #serviceType, descriptor); \
} \
int kill_warning; \
}; \
Value:extern int PWLIB_gStaticLoader__##serviceName##_##serviceType; \
static int PWLIB_StaticLoader_##serviceName##_##serviceType() \
{ PPluginManager::GetPluginManager().RegisterService(#serviceName, #serviceType, descriptor); return 1; } \
int PWLIB_gStaticLoader__##serviceName##_##serviceType = PWLIB_StaticLoader_##serviceName##_##serviceType(); \
int PPlugin_##serviceType##_##serviceName##_link() { return 0; }
Value:extern int PPlugin_##serviceType##_##serviceName##_link(); \
int const PPlugin_##serviceType##_##serviceName##_loader = PPlugin_##serviceType##_##serviceName##_link();