Public Types | Public Member Functions
InferenceEngine::Builder::Network Class Reference

This class implements a builder for IE Network. More...

#include <ie_network_builder.hpp>

Inheritance diagram for InferenceEngine::Builder::Network:
Inheritance graph
[legend]
Collaboration diagram for InferenceEngine::Builder::Network:
Collaboration graph
[legend]

Public Types

using Ptr = std::shared_ptr< Network >
 A shared pointer to the Network builder.
 
using iterator = details::INetworkIterator< Network, Layer >
 An iterator for Network builder definition.
 
- Public Types inherited from InferenceEngine::INetwork
using CPtr = std::shared_ptr< const INetwork >
 A shared pointer to the constant INetwork object.
 
using const_iterator = details::INetworkIterator< const INetwork, const ILayer >
 A constant iterator for INetwork definition.
 

Public Member Functions

iterator begin ()
 Begin network iterator. More...
 
const_iterator begin () const noexcept override
 Begin network iterator. More...
 
iterator end ()
 End network iterator. More...
 
const_iterator end () const noexcept override
 End network iterator. More...
 
size_t size () const noexcept override
 Returns a number of layers in the network. More...
 
 Network (const ICNNNetwork &network)
 The constructor creates a builder based on ICNNNetwork. More...
 
 Network (const std::string &name)
 The constructor creates a empty builder with network name. More...
 
 Network (const INetwork &network)
 The constructor creates a builder based on INetwork. More...
 
 Network (const Context &ieContext, const ICNNNetwork &network)
 The constructor creates a builder based on ICNNNetwork with custom Context. More...
 
 Network (const Context &ieContext, const std::string &name)
 The constructor creates a empty builder with network name and custom Context. More...
 
 Network (const Context &ieContext, const INetwork &network)
 The constructor creates a builder based on INetwork with custom Context. More...
 
idx_t addLayer (const std::vector< PortInfo > &inputs, const Layer &layer)
 Adds new layer and connects it with previous layers. More...
 
idx_t addLayer (const Layer &layer)
 Adds new layer. More...
 
void removeLayer (idx_t layerId)
 Removes a layer by ID. More...
 
void connect (const PortInfo &input, const PortInfo &output)
 Connects two layers. More...
 
void disconnect (const Connection &connection)
 Removes connection from the network. More...
 
std::vector< Layer::Ptr > & getLayers ()
 Returns vector of layer builders. More...
 
const std::vector< Layer::Ptr > & getLayers () const
 Returns constant vector of layer builders. More...
 
const ILayer::CPtr getLayer (idx_t id) const noexcept override
 Returns a constant smart pointer to a Layer interface. If the layer is missing, returns nullptr. More...
 
Layer::Ptr getLayer (idx_t layerId)
 
const std::vector< ILayer::CPtrgetInputs () const noexcept override
 Returns a constant vector of input layers. More...
 
std::vector< Layer::PtrgetInputs ()
 Returns a vector of input layers. More...
 
const std::vector< ILayer::CPtrgetOutputs () const noexcept override
 Returns a constant vector of output layers. More...
 
std::vector< Layer::PtrgetOutputs ()
 Returns a vector of input layers. More...
 
const std::vector< ConnectiongetLayerConnections (idx_t layerId) const noexcept override
 Returns a constant vector of connections for specific layer. If the layer is missing, returns empty vector. More...
 
const std::vector< Connection > & getConnections () const
 Returns a constant vector of all connections. More...
 
const std::string & getName () const noexcept override
 Returns a network name. More...
 
const ContextgetContext () const noexcept override
 Returns a network context. More...
 
ContextgetContext () noexcept
 Returns a network context. More...
 
const INetwork::CPtr build ()
 Builds and validate network. More...
 
void validate ()
 Validates network.
 
 operator const INetwork::CPtr ()
 The operator builds network. More...
 
- Public Member Functions inherited from InferenceEngine::INetwork
virtual ~INetwork ()=default
 Virtual destructor for the network interface.
 

Detailed Description

This class implements a builder for IE Network.

Deprecated:
Use ngraph API instead.

Constructor & Destructor Documentation

§ Network() [1/6]

InferenceEngine::Builder::Network::Network ( const ICNNNetwork network)
explicit

The constructor creates a builder based on ICNNNetwork.

Parameters
networkconstant reference to ICNNNetwork object

§ Network() [2/6]

InferenceEngine::Builder::Network::Network ( const std::string &  name)
explicit

The constructor creates a empty builder with network name.

Parameters
nameNetwork name

§ Network() [3/6]

InferenceEngine::Builder::Network::Network ( const INetwork network)
explicit

The constructor creates a builder based on INetwork.

Parameters
networkconstant reference to INetwork object

§ Network() [4/6]

InferenceEngine::Builder::Network::Network ( const Context ieContext,
const ICNNNetwork network 
)

The constructor creates a builder based on ICNNNetwork with custom Context.

Parameters
networkconstant reference to ICNNNetwork object

§ Network() [5/6]

InferenceEngine::Builder::Network::Network ( const Context ieContext,
const std::string &  name 
)

The constructor creates a empty builder with network name and custom Context.

Parameters
nameNetwork name

§ Network() [6/6]

InferenceEngine::Builder::Network::Network ( const Context ieContext,
const INetwork network 
)

The constructor creates a builder based on INetwork with custom Context.

Parameters
networkconstant reference to INetwork object

Member Function Documentation

§ addLayer() [1/2]

idx_t InferenceEngine::Builder::Network::addLayer ( const std::vector< PortInfo > &  inputs,
const Layer layer 
)

Adds new layer and connects it with previous layers.

Parameters
inputsVector with PortInfo objects from previous layers
layerLayer builder for new layer
Returns
Id of new builder for the current network

§ addLayer() [2/2]

idx_t InferenceEngine::Builder::Network::addLayer ( const Layer layer)

Adds new layer.

Parameters
layerLayer builder for new layer
Returns
Id of new builder for the current network

§ begin() [1/2]

iterator InferenceEngine::Builder::Network::begin ( )

Begin network iterator.

Returns
Network iterator

§ begin() [2/2]

const_iterator InferenceEngine::Builder::Network::begin ( ) const
overridevirtualnoexcept

Begin network iterator.

Returns
const INetwork iterator

Implements InferenceEngine::INetwork.

§ build()

const INetwork::CPtr InferenceEngine::Builder::Network::build ( )

Builds and validate network.

Returns
const shared pointer to INetwork

§ connect()

void InferenceEngine::Builder::Network::connect ( const PortInfo input,
const PortInfo output 
)

Connects two layers.

Parameters
inputPortInfo object from previous layer
outputPortInfo object from next layer

§ disconnect()

void InferenceEngine::Builder::Network::disconnect ( const Connection connection)

Removes connection from the network.

Parameters
connectionConnection

§ end() [1/2]

iterator InferenceEngine::Builder::Network::end ( )

End network iterator.

Returns
Network iterator

§ end() [2/2]

const_iterator InferenceEngine::Builder::Network::end ( ) const
overridevirtualnoexcept

End network iterator.

Returns
const INetwork iterator

Implements InferenceEngine::INetwork.

§ getConnections()

const std::vector<Connection>& InferenceEngine::Builder::Network::getConnections ( ) const

Returns a constant vector of all connections.

Returns
Vector of connections

§ getContext() [1/2]

const Context& InferenceEngine::Builder::Network::getContext ( ) const
overridevirtualnoexcept

Returns a network context.

Returns
const reference to Context

Implements InferenceEngine::INetwork.

§ getContext() [2/2]

Context& InferenceEngine::Builder::Network::getContext ( )
noexcept

Returns a network context.

Returns
reference to Context

§ getInputs() [1/2]

const std::vector<ILayer::CPtr> InferenceEngine::Builder::Network::getInputs ( ) const
overridevirtualnoexcept

Returns a constant vector of input layers.

Returns
Vector of input layers

Implements InferenceEngine::INetwork.

§ getInputs() [2/2]

std::vector<Layer::Ptr> InferenceEngine::Builder::Network::getInputs ( )

Returns a vector of input layers.

Returns
Vector of input layers

§ getLayer()

const ILayer::CPtr InferenceEngine::Builder::Network::getLayer ( idx_t  id) const
overridevirtualnoexcept

Returns a constant smart pointer to a Layer interface. If the layer is missing, returns nullptr.

Parameters
idId of the Layer
Returns
Layer interface smart pointer

Implements InferenceEngine::INetwork.

§ getLayerConnections()

const std::vector<Connection> InferenceEngine::Builder::Network::getLayerConnections ( idx_t  layerId) const
overridevirtualnoexcept

Returns a constant vector of connections for specific layer. If the layer is missing, returns empty vector.

Parameters
layerIdlayer index
Returns
Vector of connections

Implements InferenceEngine::INetwork.

§ getLayers() [1/2]

std::vector<Layer::Ptr>& InferenceEngine::Builder::Network::getLayers ( )

Returns vector of layer builders.

Returns
Vector of layer builders

§ getLayers() [2/2]

const std::vector<Layer::Ptr>& InferenceEngine::Builder::Network::getLayers ( ) const

Returns constant vector of layer builders.

Returns
constant vector of layer builders

§ getName()

const std::string& InferenceEngine::Builder::Network::getName ( ) const
overridevirtualnoexcept

Returns a network name.

Returns
Network name

Implements InferenceEngine::INetwork.

§ getOutputs() [1/2]

const std::vector<ILayer::CPtr> InferenceEngine::Builder::Network::getOutputs ( ) const
overridevirtualnoexcept

Returns a constant vector of output layers.

Returns
Vector of output layers

Implements InferenceEngine::INetwork.

§ getOutputs() [2/2]

std::vector<Layer::Ptr> InferenceEngine::Builder::Network::getOutputs ( )

Returns a vector of input layers.

Returns
Vector of input layers

§ operator const INetwork::CPtr()

InferenceEngine::Builder::Network::operator const INetwork::CPtr ( )
explicit

The operator builds network.

Returns
const shared pointer to INetwork

§ removeLayer()

void InferenceEngine::Builder::Network::removeLayer ( idx_t  layerId)

Removes a layer by ID.

Parameters
layerIdLayer ID

§ size()

size_t InferenceEngine::Builder::Network::size ( ) const
overridevirtualnoexcept

Returns a number of layers in the network.

Returns
Layers count

Implements InferenceEngine::INetwork.


The documentation for this class was generated from the following file: