31 from python_qt_binding.QtCore 
import QObject
 
   35     """Interface for discovering, loading and unloading of plugins.""" 
   38         super(PluginProvider, self).
__init__()
 
   39         self.setObjectName(
'PluginProvider')
 
   45         @param discovery_data: 
   46             The settings containing any discovery data which is cached between invocations 
   47         @return: Dictionary of plugin ids to `PluginDescriptor`s 
   49         raise NotImplementedError
 
   51     def load(self, plugin_id, plugin_context):
 
   53         Load a plugin and pass the `PluginContext`. 
   55         @return: The created plugin instance 
   56         @raise PluginLoadError 
   58         raise NotImplementedError
 
   61         """Unload a plugin.""" 
   62         raise NotImplementedError
 
   65         """Notify of shutdown."""