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::CPtr getInputs () const noexcept override
  Returns a constant vector of input layers. More...
 
std::vector< Layer::Ptr getInputs ()
  Returns a vector of input layers. More...
 
const std::vector< ILayer::CPtr getOutputs () const noexcept override
  Returns a constant vector of output layers. More...
 
std::vector< Layer::Ptr getOutputs ()
  Returns a vector of input layers. More...
 
const std::vector< Connection getLayerConnections (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 Context getContext () const noexcept override
  Returns a network context. More...
 
Context getContext () 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.

Constructor & Destructor Documentation

§ Network() [1/6]

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

The constructor creates a builder based on ICNNNetwork.

Parameters
network constant 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
name Network name

§ Network() [3/6]

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

The constructor creates a builder based on INetwork.

Parameters
network constant 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
network constant 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
name Network 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
network constant 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
inputs Vector with PortInfo objects from previous layers
layer Layer 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
layer Layer 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
input PortInfo object from previous layer
output PortInfo object from next layer

§ disconnect()

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

Removes connection from the network.

Parameters
connection Connection

§ 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
id Id 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
layerId layer 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
layerId Layer 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: