32 #ifdef IMPLEMENT_INFERENCE_ENGINE_PLUGIN
33 #define INFERENCE_PLUGIN_API(type) extern "C" __declspec(dllexport) type
35 #define INFERENCE_PLUGIN_API(type) extern "C" type
37 #elif (__GNUC__ >= 4) // NOLINT
38 #ifdef IMPLEMENT_INFERENCE_ENGINE_PLUGIN
39 #define INFERENCE_PLUGIN_API(type) extern "C" __attribute__((visibility("default"))) type
41 #define INFERENCE_PLUGIN_API(type) extern "C" type
44 #define INFERENCE_PLUGIN_API(TYPE) extern "C" TYPE
76 INFERENCE_ENGINE_API_CLASS(IInferencePlugin)
77 :
public details::IRelease {
83 virtual void GetVersion(
const Version*& versionInfo) noexcept = 0;
90 virtual void SetLogCallback(
IErrorListener& listener) noexcept = 0;
102 const std::map<std::string, std::string>& config,
ResponseDesc*
resp) noexcept = 0;
114 const std::map<std::string, std::string>& config,
ResponseDesc* resp) noexcept = 0;
122 virtual StatusCode AddExtension(InferenceEngine::IExtensionPtr extension,
131 virtual StatusCode SetConfig(
const std::map<std::string, std::string>& config,
ResponseDesc* resp) noexcept = 0;
143 res.rc = InferenceEngine::NOT_IMPLEMENTED;
149 ~IInferencePlugin()
override;
158 IE_SUPPRESS_DEPRECATED_START
160 IE_SUPPRESS_DEPRECATED_END
std::map< std::string, std::string > supportedLayersMap
A map of supported layers:
Definition: ie_plugin.hpp:58
This class represents Inference Engine Core entity. It can throw exceptions safely for the applicatio...
Definition: ie_core.hpp:25
A header file that provides versioning information for the inference engine shared library...
A header file for a plugin logging mechanism.
Inference Engine API.
Definition: ie_argmax_layer.hpp:11
Represents version information that describes plugins and the inference engine runtime library...
Definition: ie_version.hpp:20
a header file for IExecutableNetwork interface
ResponseDesc resp
Response mssage.
Definition: ie_plugin.hpp:68
This is a header file for the ICNNNetwork class.
class Use ngraph API NN Builder API will be removed in R2(PortInfo)
This class contains a pair from layerId and port index.
Definition: ie_network.hpp:34
Represents detailed information for an error.
Definition: ie_common.h:235
StatusCode
This enum contains codes for all possible return values of the interface functions.
Definition: ie_common.h:212
This is the main interface to describe the NN topology.
Definition: ie_icnn_network.hpp:41
StatusCode rc
A status code.
Definition: ie_plugin.hpp:63
The macro defines a symbol import/export mechanism essential for Microsoft Windows(R) OS...
#define INFERENCE_PLUGIN_API(TYPE)
Defines Inference Engine Plugin API method.
Definition: ie_plugin.hpp:44
StatusCode CreatePluginEngine(IInferencePlugin *&plugin, ResponseDesc *resp) noexcept
Creates the default instance of the interface (per plugin)
This is a header file for Inference Engine Extension Interface.
virtual void QueryNetwork(const ICNNNetwork &network, const std::map< std::string, std::string > &config, QueryNetworkResult &res) const noexcept
Query plugin if it supports specified network with specified configuration.
Definition: ie_plugin.hpp:139
This class represents a custom error listener. Plugin consumers can provide it via InferenceEngine::S...
Definition: ie_error.hpp:16
header file for no_copy class
std::shared_ptr< IExecutableNetwork > Ptr
A smart pointer to the current IExecutableNetwork object.
Definition: ie_iexecutable_network.hpp:39
Responce structure encapsulating information about supported layer.
Definition: ie_plugin.hpp:52