7 #include <builders/ie_layer_builder.hpp>
26 class INFERENCE_ENGINE_API_CLASS(Network) {
31 using Ptr = std::shared_ptr<Network>;
38 explicit Network(
const ICNNNetwork& network);
44 explicit Network(
const std::string& name);
50 explicit Network(
const INetwork& network);
57 Network(
const Context& ieContext,
const ICNNNetwork& network);
63 Network(
const Context& ieContext,
const std::string& name);
69 Network(
const Context& ieContext,
const INetwork& network);
74 virtual ~Network() =
default;
84 idx_t addLayer(
const std::vector<PortInfo>& inputs,
const Layer& layer);
92 idx_t addLayer(
const Layer& layer);
98 void removeLayer(idx_t layerId);
106 void connect(
const PortInfo& input,
const PortInfo& output);
112 void disconnect(
const Connection& connection);
121 Layer& getLayer(idx_t layerId);
129 const Layer& getLayer(idx_t layerId)
const;
136 std::vector<Layer>& getLayers();
142 const std::vector<Layer>& getLayers()
const;
151 const std::vector<Connection> getLayerConnections(idx_t layerId)
const noexcept;
169 const size_t version;
171 std::vector<Layer> layers;
172 std::vector<Connection> connections;
181 INFERENCE_ENGINE_API_CPP(
const std::shared_ptr<ICNNNetwork>) convertToICNNNetwork(const INetwork::Ptr& network);
A header file that provides wrapper for ICNNNetwork object.
Definition: ie_argmax_layer.hpp:11
a header file for the Inference Engine Network interface
A header file for Blob and generic TBlob<>
This is a header file for the ICNNNetwork class.
size_t idx_t
A type of network objects indexes.
Definition: ie_inetwork.hpp:26
This is a header file for the IE Context class.
This is a header file with common inference engine definitions.
std::shared_ptr< INetwork > Ptr
A shared pointer to the INetwork object.
Definition: ie_inetwork.hpp:294