2 // Copyright (C) 2018-2019 Intel Corporation.
4 // This software and the related documents are Intel copyrighted materials,
5 // and your use of them is governed by the express license under which they
6 // were provided to you (End User License Agreement for the Intel(R) Software
7 // Development Products (Version May 2017)). Unless the License provides
8 // otherwise, you may not use, modify, copy, publish, distribute, disclose or
9 // transmit this software or the related documents without Intel's prior
10 // written permission.
12 // This software and the related documents are provided as is, with no
13 // express or implied warranties, other than those that are expressly
14 // stated in the License.
19 #include "ie_ihetero_plugin.hpp"
23 #include <cpp/ie_plugin_cpp.hpp>
25 namespace InferenceEngine {
27 class HeteroDeviceLoader: public IHeteroDeviceLoader {
29 explicit HeteroDeviceLoader(const std::string& deviceId);
30 StatusCode LoadNetwork(
31 const std::string& device,
32 IExecutableNetwork::Ptr &ret,
34 const std::map<std::string, std::string> &config,
35 ResponseDesc *resp)noexcept override;
38 * @depricated Use the version with config parameter
40 void QueryNetwork(const std::string &device,
41 const ICNNNetwork &network,
42 QueryNetworkResult &res)noexcept override;
44 void QueryNetwork(const std::string &device,
45 const ICNNNetwork &network,
46 const std::map<std::string, std::string>& config,
47 QueryNetworkResult &res)noexcept override;
49 void initConfigs(const std::map<std::string, std::string> &config,
50 const std::vector<InferenceEngine::IExtensionPtr> &extensions);
52 void SetLogCallback(IErrorListener &listener) override;
55 std::string _deviceId;
56 InferenceEngine::InferenceEnginePluginPtr _plugin;
59 } // namespace InferenceEngine