An API of plugin to be implemented by a plugin. More...
#include <ie_iplugin_internal.hpp>
Public Types | |
using | Ptr = std::shared_ptr< IInferencePlugin > |
A shared pointer to IInferencePlugin interface. | |
Public Member Functions | |
void | SetVersion (const Version &version) |
Sets a plugin version. More... | |
Version | GetVersion () const |
Gets a plugin version. More... | |
void | Release () noexcept override |
virtual std::string | GetName () const noexcept=0 |
Provides a name of a plugin. More... | |
virtual void | SetName (const std::string &name) noexcept=0 |
Sets a name for a plugin. More... | |
virtual ExecutableNetwork | LoadNetwork (const CNNNetwork &network, const std::map< std::string, std::string > &config)=0 |
Creates an executable network from an pares network object, users can create as many networks as they need and use them simultaneously (up to the limitation of the HW resources) More... | |
virtual ExecutableNetwork | LoadNetwork (const CNNNetwork &network, const std::map< std::string, std::string > &config, RemoteContext::Ptr context)=0 |
Creates an executable network from network object, on specified remote context. More... | |
virtual void | AddExtension (InferenceEngine::IExtensionPtr extension)=0 |
Registers extension within plugin. More... | |
virtual void | SetConfig (const std::map< std::string, std::string > &config)=0 |
Sets configuration for plugin, acceptable keys can be found in ie_plugin_config.hpp. More... | |
virtual Parameter | GetConfig (const std::string &name, const std::map< std::string, Parameter > &options) const =0 |
Gets configuration dedicated to plugin behaviour. More... | |
virtual Parameter | GetMetric (const std::string &name, const std::map< std::string, Parameter > &options) const =0 |
Gets general runtime metric for dedicated hardware. More... | |
virtual RemoteContext::Ptr | CreateContext (const ParamMap ¶ms)=0 |
Creates a remote context instance based on a map of parameters. More... | |
virtual RemoteContext::Ptr | GetDefaultContext (const ParamMap ¶ms)=0 |
Provides a default remote context instance if supported by a plugin. More... | |
virtual ExecutableNetwork | ImportNetwork (const std::string &modelFileName, const std::map< std::string, std::string > &config)=0 |
Creates an executable network from an previously exported network. More... | |
virtual ExecutableNetwork | ImportNetwork (std::istream &networkModel, const std::map< std::string, std::string > &config)=0 |
Creates an executable network from an previously exported network using plugin implementation and removes Inference Engine magic and plugin name. More... | |
virtual ExecutableNetwork | ImportNetwork (std::istream &networkModel, const RemoteContext::Ptr &context, const std::map< std::string, std::string > &config)=0 |
Creates an executable network from an previously exported network using plugin implementation and removes Inference Engine magic and plugin name. More... | |
virtual void | SetCore (ICore *core) noexcept=0 |
Sets pointer to ICore interface. More... | |
virtual ICore * | GetCore () const noexcept=0 |
Gets reference to ICore interface. More... | |
virtual QueryNetworkResult | QueryNetwork (const CNNNetwork &network, const std::map< std::string, std::string > &config) const =0 |
Queries a plugin about supported layers in network. More... | |
Protected Member Functions | |
~IInferencePlugin () override=default | |
Destroys the object. | |
An API of plugin to be implemented by a plugin.
|
pure virtual |
Registers extension within plugin.
extension | - pointer to already loaded extension |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtual |
Creates a remote context instance based on a map of parameters.
[in] | params | The map of parameters |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtual |
Gets configuration dedicated to plugin behaviour.
name | - value of config corresponding to config key |
options | - configuration details for config |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtualnoexcept |
Gets reference to ICore interface.
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtual |
Provides a default remote context instance if supported by a plugin.
[in] | params | The map of parameters |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtual |
Gets general runtime metric for dedicated hardware.
name | - metric name to request |
options | - configuration details for metric |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtualnoexcept |
Provides a name of a plugin.
Implemented in InferenceEngine::InferencePluginInternal.
|
inline |
Gets a plugin version.
|
pure virtual |
Creates an executable network from an previously exported network.
modelFileName | - path to the location of the exported file |
config | A string -> string map of parameters |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtual |
Creates an executable network from an previously exported network using plugin implementation and removes Inference Engine magic and plugin name.
networkModel | Reference to network model output stream |
context | A pointer to plugin context derived from RemoteContext class used to execute the network |
config | A string -> string map of parameters |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtual |
Creates an executable network from an previously exported network using plugin implementation and removes Inference Engine magic and plugin name.
networkModel | Reference to network model output stream |
config | A string -> string map of parameters |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtual |
Creates an executable network from an pares network object, users can create as many networks as they need and use them simultaneously (up to the limitation of the HW resources)
network | A network object acquired from InferenceEngine::Core::ReadNetwork |
config | A string-string map of config parameters relevant only for this load operation |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtual |
Creates an executable network from network object, on specified remote context.
network | A network object acquired from InferenceEngine::Core::ReadNetwork |
config | string-string map of config parameters relevant only for this load operation |
context | A pointer to plugin context derived from RemoteContext class used to execute the network |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtual |
Queries a plugin about supported layers in network.
[in] | network | The network object to query |
[in] | config | The map of configuration parameters |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtual |
Sets configuration for plugin, acceptable keys can be found in ie_plugin_config.hpp.
config | string-string map of config parameters |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtualnoexcept |
Sets pointer to ICore interface.
core | Pointer to Core interface |
Implemented in InferenceEngine::InferencePluginInternal.
|
pure virtualnoexcept |
Sets a name for a plugin.
[in] | name | The name |
Implemented in InferenceEngine::InferencePluginInternal.
|
inline |
Sets a plugin version.
version | A version to set |