Publishing R5 content (#72)
[platform/upstream/dldt.git] / inference-engine / src / mkldnn_plugin / mkldnn_extension_mngr.h
1 // Copyright (C) 2018 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
3 //
4
5 #pragma once
6
7 #include <map>
8 #include <vector>
9 #include <memory>
10 #include <ie_iextension.h>
11
12 namespace MKLDNNPlugin {
13
14 class MKLDNNExtensionManager {
15 public:
16     using Ptr = std::shared_ptr<MKLDNNExtensionManager>;
17     MKLDNNExtensionManager() = default;
18     InferenceEngine::ILayerImplFactory* CreateExtensionFactory(const InferenceEngine::CNNLayerPtr& Layer);
19     void AddExtension(InferenceEngine::IExtensionPtr extension);
20
21 private:
22     std::vector<InferenceEngine::IExtensionPtr> _extensions;
23 };
24
25 }  // namespace MKLDNNPlugin