ie_memory_layer.hpp
Go to the documentation of this file.
1 // Copyright (C) 2018-2020 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
3 //
4 
5 /**
6  * @file
7  */
8 
9 #pragma once
10 
12 #include <ie_network.hpp>
13 #include <string>
14 
15 namespace InferenceEngine {
16 namespace Builder {
17 
18 /**
19  * @deprecated Use ngraph API instead.
20  * @brief The class represents a builder for Memory layer
21  */
22 IE_SUPPRESS_DEPRECATED_START
23 class INFERENCE_ENGINE_NN_BUILDER_API_CLASS(MemoryLayer): public LayerDecorator {
24 public:
25  /**
26  * @brief The constructor creates a builder with the name
27  * @param name Layer name
28  */
29  explicit MemoryLayer(const std::string& name = "");
30  /**
31  * @brief The constructor creates a builder from generic builder
32  * @param layer pointer to generic builder
33  */
34  explicit MemoryLayer(const Layer::Ptr& layer);
35  /**
36  * @brief The constructor creates a builder from generic builder
37  * @param layer constant pointer to generic builder
38  */
39  explicit MemoryLayer(const Layer::CPtr& layer);
40  /**
41  * @brief Sets the name for the layer
42  * @param name Layer name
43  * @return reference to layer builder
44  */
45  MemoryLayer& setName(const std::string& name);
46 
47  /**
48  * @brief Returns output port
49  * @return Output port
50  */
51  const Port& getOutputPort() const;
52  /**
53  * @brief Sets output port
54  * @param port Output port
55  * @return reference to layer builder
56  */
57  MemoryLayer& setOutputPort(const Port& port);
58  /**
59  * @brief Returns input port
60  * @return Input port
61  */
62  const Port& getInputPort() const;
63  /**
64  * @brief Sets input port
65  * @param port Input port
66  * @return reference to layer builder
67  */
68  MemoryLayer& setInputPort(const Port& port);
69  /**
70  * @brief Returns memory ID
71  * @return String with memory ID
72  */
73  const std::string getId() const;
74  /**
75  * @brief Sets memory ID
76  * @param id Memory ID
77  * @return reference to layer builder
78  */
79  MemoryLayer& setId(const std::string& id);
80  /**
81  * @brief Returns the index of memory layer
82  * @return Index
83  */
84  size_t getIndex() const;
85  /**
86  * @brief Sets the index of memory layer
87  * @param index Index equal 0 means this layer is output one.
88  * @return reference to layer builder
89  */
90  MemoryLayer& setIndex(size_t index);
91  /**
92  * @brief Returns size of the group
93  * @return Size of the group
94  */
95  size_t getSize() const;
96  /**
97  * @brief Sets size of the group
98  * @param size Size if size equals 2 means this group is a pair (only 2 is supported).
99  * @return reference to layer builder
100  */
101  MemoryLayer& setSize(size_t size);
102 };
103 IE_SUPPRESS_DEPRECATED_END
104 
105 } // namespace Builder
106 } // namespace InferenceEngine
Inference Engine API.
Definition: ie_argmax_layer.hpp:15
std::shared_ptr< const Layer > CPtr
A shared pointer to the constant Layer builder.
Definition: ie_layer_builder.hpp:52
std::string name
Layer name.
Definition: ie_layers.h:42
This class defines the basic functional for layer builders.
Definition: ie_layer_decorator.hpp:26
std::shared_ptr< Layer > Ptr
A shared pointer to the Layer builder.
Definition: ie_layer_builder.hpp:48
A header file for the Inference Engine Network interface.
This class is the main object to describe the Inference Engine port.
Definition: ie_network.hpp:230
The class represents a builder for Memory layer.
Definition: ie_memory_layer.hpp:23