ie_context.hpp
Go to the documentation of this file.
1 // Copyright (C) 2018-2019 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
3 //
4 
5 /**
6  * @brief This is a header file for the IE Context class
7  * @file ie_context.hpp
8  */
9 #pragma once
10 
11 #include <details/caseless.hpp>
12 #include <ie_iextension.h>
13 #include <string>
14 #include <vector>
15 #include <map>
16 
17 namespace InferenceEngine {
18 
19 /**
20  * @brief This class implements object
21  */
22 class INFERENCE_ENGINE_API_CLASS(Context) {
23 public:
24  Context();
25 
26  /**
27  * @brief Registers extension within the context
28  * @param ext Pointer to already loaded extension
29  */
30  void addExtension(const IShapeInferExtensionPtr& ext);
31 
32  /**
33  * @brief Registers Shape Infer implementation within the Context
34  * @param type Layer type
35  * @param impl Shape Infer implementation
36  */
37  void addShapeInferImpl(const std::string& type, const IShapeInferImpl::Ptr& impl);
38 
39  /**
40  * @brief Returns the shape infer implementation by layer type
41  * @param type Layer type
42  * @return Shape Infer implementation
43  */
44  IShapeInferImpl::Ptr getShapeInferImpl(const std::string& type);
45 
46 private:
47  details::caseless_map<std::string, IShapeInferImpl::Ptr> shapeInferImpls;
48 };
49 
50 } // namespace InferenceEngine
Definition: ie_argmax_layer.hpp:11
This is a header file for Inference Engine Extension Interface.