14 #include "cpp_interfaces/impl/ie_infer_async_request_internal.hpp"
15 #include "cpp_interfaces/impl/ie_infer_request_internal.hpp"
16 #include "cpp_interfaces/interface/ie_iexecutable_network_internal.hpp"
17 #include "cpp_interfaces/interface/ie_iinfer_request_internal.hpp"
32 typedef std::shared_ptr<ExecutableNetworkInternal>
Ptr;
53 outputMap[output.first] = output.second;
61 inputMap[input.first] = input.second;
66 void Export(
const std::string& modelFileName)
override {
69 std::stringstream strm;
71 std::ofstream(modelFileName.c_str()) << strm.rdbuf();
74 void Export(std::ostream& networkModel)
override {
75 std::stringstream strm;
77 strm <<
_plugin->GetName() << std::endl;
79 networkModel << strm.rdbuf();
95 std::vector<IVariableStateInternal::Ptr>
QueryState()
override {
99 void SetConfig(
const std::map<std::string, Parameter>& config)
override {
100 if (config.empty()) {
103 THROW_IE_EXCEPTION <<
"The following config value cannot be changed dynamically for ExecutableNetwork: "
104 << config.begin()->first;
109 THROW_IE_EXCEPTION <<
"GetConfig for executable network is not supported by this device";
Minimum implementation of IExecutableNetworkInternal interface. Must not be used as a base class in p...
Definition: ie_executable_network_internal.hpp:27
virtual void setNetworkOutputs(const InferenceEngine::OutputsDataMap networkOutputs)
Sets the network outputs data.
Definition: ie_executable_network_internal.hpp:46
ConstOutputsDataMap GetOutputsInfo() const override
Gets the Executable network output Data node information. The received info is stored in the given Da...
Definition: ie_executable_network_internal.hpp:50
IInferencePlugin::Ptr _plugin
A pointer to a IInferencePlugin interface.
Definition: ie_executable_network_internal.hpp:140
ConstInputsDataMap GetInputsInfo() const override
Gets the Executable network input Data node information. The received info is stored in the given Inp...
Definition: ie_executable_network_internal.hpp:58
virtual void ExportImpl(std::ostream &networkModel)
Exports an internal hardware-dependent model to a stream.
Definition: ie_executable_network_internal.hpp:128
CNNNetwork GetExecGraphInfo() override
Get executable graph information from a device.
Definition: ie_executable_network_internal.hpp:82
RemoteContext::Ptr GetContext() const override
Gets the remote context.
Definition: ie_executable_network_internal.hpp:117
std::shared_ptr< ExecutableNetworkInternal > Ptr
A shared pointer to ExecutableNetworkInternal object.
Definition: ie_executable_network_internal.hpp:32
void Export(const std::string &modelFileName) override
Export the current created executable network so it can be used later in the Import() main API.
Definition: ie_executable_network_internal.hpp:66
std::vector< IVariableStateInternal::Ptr > QueryState() override
Queries memory states.
Definition: ie_executable_network_internal.hpp:95
virtual void setNetworkInputs(const InferenceEngine::InputsDataMap networkInputs)
Sets the network inputs info.
Definition: ie_executable_network_internal.hpp:38
InferenceEngine::InputsDataMap _networkInputs
Holds infromation about network inputs info.
Definition: ie_executable_network_internal.hpp:133
void SetPointerToPlugin(IInferencePlugin::Ptr plugin)
Sets the pointer to plugin internal.
Definition: ie_executable_network_internal.hpp:91
Parameter GetMetric(const std::string &name) const override
Gets general runtime metric for dedicated hardware.
Definition: ie_executable_network_internal.hpp:112
InferenceEngine::OutputsDataMap _networkOutputs
Holds information about network outputs data.
Definition: ie_executable_network_internal.hpp:134
void SetConfig(const std::map< std::string, Parameter > &config) override
Sets configuration for current executable network.
Definition: ie_executable_network_internal.hpp:99
Parameter GetConfig(const std::string &name) const override
Gets configuration dedicated to plugin behaviour.
Definition: ie_executable_network_internal.hpp:107
void Export(std::ostream &networkModel) override
Export the current created executable network so it can be used later in the Import() main API.
Definition: ie_executable_network_internal.hpp:74
An internal API of executable network to be implemented by plugin, which is used in ExecutableNetwork...
Definition: ie_iexecutable_network_internal.hpp:23
std::shared_ptr< IInferencePlugin > Ptr
A shared pointer to IInferencePlugin interface.
Definition: ie_iplugin_internal.hpp:125
std::shared_ptr< RemoteContext > Ptr
#define THROW_IE_EXCEPTION_WITH_STATUS(__status)
Throws an exception along with the status (which is eventually converted to the typed exception)
Definition: exception2status.hpp:19
constexpr static const ExportMagic exportMagic
Magic number used by ie core to identify exported network with plugin name.
Definition: ie_icore.hpp:119
#define THROW_IE_EXCEPTION
Inference Engine plugin API wrapper, to be used by particular implementors.
Inference Engine Plugin API namespace.
std::map< std::string, InputInfo::Ptr > InputsDataMap
std::map< std::string, CDataPtr > ConstOutputsDataMap
std::map< std::string, InputInfo::CPtr > ConstInputsDataMap
std::map< std::string, DataPtr > OutputsDataMap