Namespaces | Data Structures | Typedefs | Enumerations | Functions | Variables
InferenceEngine Namespace Reference

Inference Engine API. More...

Namespaces

 Builder
 Neural network builder API.
 
 CLDNNConfigParams
 GPU plugin configuration.
 
 DLIAConfigParams
 DLIA plugin configuration.
 
 DliaMetrics
 DLIA plugin metrics.
 
 GNAConfigParams
 GNA plugin configuration.
 
 HeteroConfigParams
 Heterogeneous plugin configuration.
 
 Metrics
 Metrics
 
 MultiDeviceConfigParams
 Multi Device plugin configuration.
 
 PluginConfigParams
 Generic plugin configuration.
 
 VPUConfigParams
 VPU plugin configuration.
 

Data Structures

class  BatchNormalizationLayer
 This class represents a Batch Normalization Layer. More...
 
class  BinaryConvolutionLayer
 This class represents a standard binary convolution layer. More...
 
class  Blob
 This class represents a universal container in the Inference Engine. More...
 
class  BlockingDesc
 This class describes blocking layouts. More...
 
class  BroadcastLayer
 This class represents a standard Broadcast layer. More...
 
class  BucketizeLayer
 This class represents Bucketize layer Bucketize layer bucketizes the input based on the boundaries. More...
 
class  ClampLayer
 This class represents a Clamp activation layer. More...
 
class  CNNLayer
 This is a base abstraction Layer - all DNN Layers inherit from this class. More...
 
class  CNNNetwork
 This class contains all the information about the Neural Network and the related binary information. More...
 
class  CompoundBlob
 This class represents a blob that contains other blobs. More...
 
class  ConcatLayer
 This class represents concatenation layer. More...
 
class  Connection
 This class is the main object to describe the Inference Engine connection. More...
 
class  Context
 This class implements object. More...
 
class  ConvolutionLayer
 This class represents a standard 3D Convolution Layer. More...
 
class  Core
 This class represents Inference Engine Core entity. More...
 
class  CropLayer
 This class represents a standard crop layer. More...
 
class  Data
 This class represents the main Data representation node. More...
 
struct  DataConfig
 This structure describes data configuration. More...
 
class  DeconvolutionLayer
 This class represents a standard deconvolution layer. More...
 
class  DeformableConvolutionLayer
 This class represents a standard deformable convolution layer. More...
 
class  DepthToSpaceLayer
 This class represents a standard Depth To Space layer Depth To Space picks from input tensor according parameters. More...
 
class  EltwiseLayer
 This class represents an element wise operation layer. More...
 
class  ExecutableNetwork
 wrapper over IExecutableNetwork More...
 
class  ExperimentalSparseWeightedReduceLayer
 This class represents ExperimentalSparseWeightedReduce layer ExperimentalSparseWeightedReduce layer reduces data along sparse segments of a tensor. More...
 
class  Extension
 This class is a C++ helper to work with objects created using extensions. More...
 
class  FillLayer
 This class represents a standard Fill layer. More...
 
class  FullyConnectedLayer
 This class represents a fully connected layer. More...
 
class  GatherLayer
 This class represents a standard Gather layer. More...
 
class  GemmLayer
 This class represents a general matrix multiplication operation layer. More...
 
class  GeneralError
 This class represents StatusCode::GENERIC_ERROR exception. More...
 
class  GRNLayer
 This class represents standard GRN Layer. More...
 
class  GRUCell
 GRU Cell layer. More...
 
class  I420Blob
 Represents a blob that contains three planes (Y,U and V) in I420 color format. More...
 
class  IAllocator
 Allocator concept to be used for memory management and is used as part of the Blob. More...
 
class  ICNNNetwork
 This is the main interface to describe the NN topology. More...
 
class  ICNNNetworkStats
 This is the interface to describe the NN topology scoring statistics. More...
 
class  IErrorListener
 This class represents a custom error listener. More...
 
class  IExecutableNetwork
 This is an interface of an executable network. More...
 
class  IExtension
 This class is the main extension interface. More...
 
class  IInferRequest
 This is an interface of asynchronous infer request. More...
 
class  ILayer
 This class is the main interface to describe the Inference Engine layer. More...
 
class  ILayerExecImpl
 This class provides interface for the implementation with the custom execution code. More...
 
class  ILayerImpl
 This class provides interface for extension implementations. More...
 
class  ILayerImplFactory
 This class provides interface for extension factories. More...
 
class  IMemoryState
 manages data for reset operations More...
 
class  INetwork
 This class is the main interface to describe the Inference Engine network. More...
 
class  INetwotkIterator
 
class  InferenceEngine
 This class is a C++ API wrapper for IInferencePlugin. More...
 
struct  InferenceEngineProfileInfo
 Represents basic inference profiling information per layer. More...
 
class  InferNotStarted
 This class represents StatusCode::INFER_NOT_STARTED exception. More...
 
class  InferRequest
 
class  InputInfo
 This class contains information about each input of the network. More...
 
class  IShapeInferExtension
 This class is the reader extension interface to provide implementation for shape propagation. More...
 
class  IShapeInferImpl
 This class provides interface for the implementation with the custom execution code. More...
 
struct  LayerConfig
 This structure describes Layer configuration. More...
 
struct  LayerParams
 This is an internal common Layer parameter parsing arguments. More...
 
class  LockedMemory
 This class represents locked memory for read/write memory. More...
 
class  LockedMemory< const T >
 This class is for read-only segments. More...
 
class  LockedMemory< void >
 This class is for <void*> data and allows casting to any pointers. More...
 
class  LSTMCell
 LSTM Cell layer. More...
 
class  MathLayer
 This class represents a standard Math layers. More...
 
class  MemoryBlob
 This class implements a container object that represents a tensor in memory (host and remote/accelerated) More...
 
class  MemoryState
 C++ exception based error reporting wrapper of API class IMemoryState. More...
 
class  MVNLayer
 This class represents standard MVN Layer. More...
 
class  NetworkNodeStats
 This class implements a container which stores statistics for a layer. More...
 
class  NetworkNotLoaded
 This class represents StatusCode::NETWORK_NOT_LOADED exception. More...
 
class  NonMaxSuppressionLayer
 This class represents a standard NonMaxSuppression layer. More...
 
class  NormLayer
 This class represents a Linear Response Normalization (LRN) Layer. More...
 
class  NotAllocated
 This class represents StatusCode::NOT_ALLOCATED exception. More...
 
class  NotFound
 This class represents StatusCode::NOT_FOUND exception. More...
 
class  NotImplemented
 This class represents StatusCode::NOT_IMPLEMENTED exception. More...
 
class  NV12Blob
 Represents a blob that contains two planes (Y and UV) in NV12 color format. More...
 
class  OneHotLayer
 This class represents a OneHot layer Converts input into OneHot representation. More...
 
class  OutOfBounds
 This class represents StatusCode::OUT_OF_BOUNDS exception. More...
 
class  PadLayer
 This class represents a standard Pad layer. More...
 
class  Parameter
 This class represents an object to work with different parameters. More...
 
class  ParameterMismatch
 This class represents StatusCode::PARAMETER_MISMATCH exception. More...
 
class  PoolingLayer
 This class represents a standard pooling layer. More...
 
class  Port
 This class is the main object to describe the Inference Engine port. More...
 
class  PortData
 
class  PortInfo
 This class contains a pair from layerId and port index. More...
 
class  PowerLayer
 This class represents a standard Power Layer. More...
 
class  Precision
 This class holds precision value and provides precision related operations. More...
 
struct  PrecisionTrait
 Particular precision traits. More...
 
class  PReLULayer
 This class represents a Layer which performs Scale and Shift. More...
 
struct  PreProcessChannel
 This structure stores info about pre-processing of network inputs (scale, mean image, ...) More...
 
class  PreProcessInfo
 This class stores pre-process information for the input. More...
 
struct  PrimitiveInfo
 Structure with information about Primitive. More...
 
class  PropertyVector
 
class  QuantizeLayer
 This class represents a quantization operation layer. More...
 
struct  QueryNetworkResult
 Responce structure encapsulating information about supported layer. More...
 
class  RangeLayer
 This class represents a standard RangeLayer layer. More...
 
class  ReduceLayer
 This class represents a standard Reduce layers. More...
 
class  ReLU6Layer
 This class represents a ReLU6 activation layer. More...
 
class  ReLULayer
 This class represents a Rectified Linear activation layer. More...
 
class  RemoteBlob
 This class represents an Inference Engine abstraction to the memory allocated on the remote (non-CPU) accelerator device. More...
 
class  RemoteContext
 This class represents an Inference Engine abstraction for remote (non-CPU) accelerator device-specific execution context. Such context represents a scope on the device within which executable networks and remote memory blobs can exist, function and exchange data. More...
 
class  RequestBusy
 This class represents StatusCode::REQUEST_BUSY exception. More...
 
class  ReshapeLayer
 This class represents a standard reshape layer. More...
 
struct  ResponseDesc
 Represents detailed information for an error. More...
 
class  ResultNotReady
 This class represents StatusCode::RESULT_NOT_READY exception. More...
 
class  ReverseSequenceLayer
 This class represents a standard Reverse Sequence layer. More...
 
class  RNNCell
 RNN Cell layer. More...
 
class  RNNCellBase
 Base class for recurrent cell layers. More...
 
class  RNNSequenceLayer
 Sequence of recurrent cells. More...
 
struct  ROI
 This structure describes ROI data. More...
 
class  ScaleShiftLayer
 This class represents a Layer which performs Scale and Shift. More...
 
class  ScatterLayer
 This class represents a standard Scatter layer. More...
 
class  SelectLayer
 This class represents a SelectLayer layer. More...
 
class  ShapeInferExtension
 This class is a C++ helper to work with objects created using extensions. More...
 
class  ShuffleChannelsLayer
 This class represents a standard Shuffle Channels layer Shuffle Channels picks from input tensor according parameters. More...
 
class  SoftMaxLayer
 This class represents standard softmax Layer. More...
 
class  SpaceToDepthLayer
 This class represents a standard Space To Depth layer Depth To Space picks from input tensor according parameters. More...
 
class  SparseFillEmptyRowsLayer
 This class represents SparseFillEmptyRows layer. More...
 
class  SparseSegmentReduceLayer
 This class represents SparseSegmentMean(SqrtN, Sum) layers SparseSegmentMean(SqrtN, Sum) layer reduces data along sparse segments of a tensor. More...
 
class  SparseToDenseLayer
 This class represents SparseToDense layer SparseToDense layer converts a sparse tensor to a dense tensor. More...
 
class  SplitLayer
 This class represents a layer that evenly splits the input into the supplied outputs. More...
 
class  StridedSliceLayer
 This class represents a standard Strided Slice layer. More...
 
class  TBlob
 Represents real host memory allocated for a Tensor/Blob per C type. More...
 
class  TensorDesc
 This class defines Tensor description. More...
 
struct  TensorInfo
 This structure describes tensor information. More...
 
class  TensorIterator
 This class represents TensorIterator layer. More...
 
class  TileLayer
 This class represents a standard Tile Layer. More...
 
class  TopKLayer
 This class represents a standard TopK layer. More...
 
class  Unexpected
 This class represents StatusCode::UNEXPECTED exception. More...
 
class  UniqueLayer
 This class represents Unique layer. More...
 
union  UserValue
 The method holds the user values to enable binding of data per graph node. More...
 
struct  Version
 Represents version information that describes plugins and the inference engine runtime library. More...
 
class  WeightableLayer
 This class represents a layer with Weights and/or Biases (e.g. Convolution/Fully Connected, etc.) More...
 

Typedefs

using gpu_handle_param = void *
 Shortcut for defining a handle parameter.
 
using BlobMap = std::map< std::string, Blob::Ptr >
 This is a convenient type for working with a map containing pairs(string, pointer to a Blob instance).
 
using SizeVector = std::vector< size_t >
 Represents tensor size. More...
 
using CNNLayerPtr = std::shared_ptr< CNNLayer >
 A smart pointer to the CNNLayer.
 
using CNNLayerWeakPtr = std::weak_ptr< CNNLayer >
 A smart weak pointer to the CNNLayer.
 
using DataPtr = std::shared_ptr< Data >
 Smart pointer to Data.
 
using CDataPtr = std::shared_ptr< const Data >
 Smart pointer to constant Data.
 
using DataWeakPtr = std::weak_ptr< Data >
 Smart weak pointer to Data.
 
using OutputsDataMap = std::map< std::string, DataPtr >
 A collection that contains string as key, and Data smart pointer as value.
 
using NetworkNodeStatsPtr = std::shared_ptr< NetworkNodeStats >
 A shared pointer to the NetworkNodeStats object.
 
using NetworkNodeStatsWeakPtr = std::weak_ptr< NetworkNodeStats >
 A smart pointer to the NetworkNodeStats object.
 
using NetworkStatsMap = std::map< std::string, NetworkNodeStatsPtr >
 A map of pairs: name of a layer and related statistics.
 
using ConstOutputsDataMap = std::map< std::string, CDataPtr >
 A collection that contains string as key, and const Data smart pointer as value.
 
using IExtensionPtr = std::shared_ptr< IExtension >
 
using IShapeInferExtensionPtr = std::shared_ptr< IShapeInferExtension >
 
using InputsDataMap = std::map< std::string, InputInfo::Ptr >
 A collection that contains string as key, and InputInfo smart pointer as value.
 
using ConstInputsDataMap = std::map< std::string, InputInfo::CPtr >
 A collection that contains string as key, and const InputInfo smart pointer as value.
 
using GenericLayer = class CNNLayer
 Alias for CNNLayer object.
 
using idx_t = size_t
 A type of network objects indexes. More...
 
using InferenceEnginePluginPtr = InferenceEngine::details::SOPointer< IInferencePlugin >
 A C++ helper to work with objects created by the plugin. More...
 
using ParamMap = std::map< std::string, Parameter >
 An std::map object containing low-level object parameters of classes that are derived from RemoteBlob or RemoteContext.
 

Enumerations

enum  LockOp { LOCK_FOR_READ = 0, LOCK_FOR_WRITE }
 Allocator handle mapping type.
 
enum  Layout : uint8_t {
  ANY = 0, NCHW = 1, NHWC = 2, NCDHW = 3,
  NDHWC = 4, OIHW = 64, GOIHW = 65, OIDHW = 66,
  GOIDHW = 67, SCALAR = 95, C = 96, CHW = 128,
  HW = 192, NC = 193, CN = 194, BLOCKED = 200
}
 Layouts that the inference engine supports.
 
enum  ColorFormat : uint32_t {
  RAW = 0u, RGB, BGR, RGBX,
  BGRX, NV12, I420
}
 Extra information about input color format for preprocessing. More...
 
enum  StatusCode : int {
  OK = 0, GENERAL_ERROR = -1, NOT_IMPLEMENTED = -2, NETWORK_NOT_LOADED = -3,
  PARAMETER_MISMATCH = -4, NOT_FOUND = -5, OUT_OF_BOUNDS = -6, UNEXPECTED = -7,
  REQUEST_BUSY = -8, RESULT_NOT_READY = -9, NOT_ALLOCATED = -10, INFER_NOT_STARTED = -11,
  NETWORK_NOT_READ = -12
}
 This enum contains codes for all possible return values of the interface functions.
 
enum  eDIMS_AXIS : uint8_t { X_AXIS = 0, Y_AXIS, Z_AXIS }
 
enum  MeanVariant { MEAN_IMAGE, MEAN_VALUE, NONE }
 Defines available types of mean. More...
 
enum  ResizeAlgorithm { NO_RESIZE = 0, RESIZE_BILINEAR, RESIZE_AREA }
 Represents the list of supported resize algorithms.
 

Functions

template<class T >
std::shared_ptr< T > make_so_pointer (const file_name_t &name)=delete
 Creates a special shared_pointer wrapper for the given type from a specific shared module. More...
 
InferenceEngine::IAllocatorCreateDefaultAllocator () noexcept
 Creates the default implementation of the Inference Engine allocator per plugin. More...
 
template<typename T , typename std::enable_if<!std::is_pointer< T >::value &&!std::is_reference< T >::value, int >::type = 0, typename std::enable_if< std::is_base_of< Blob, T >::value, int >::type = 0>
std::shared_ptr< T > as (const Blob::Ptr &blob) noexcept
 Helper cast function to work with shared Blob objects. More...
 
template<typename T , typename std::enable_if<!std::is_pointer< T >::value &&!std::is_reference< T >::value, int >::type = 0, typename std::enable_if< std::is_base_of< Blob, T >::value, int >::type = 0>
std::shared_ptr< const T > as (const Blob::CPtr &blob) noexcept
 Helper cast function to work with shared Blob objects. More...
 
template<typename Type >
InferenceEngine::TBlob< Type >::Ptr make_shared_blob (const TensorDesc &tensorDesc)
 Creates a blob with the given tensor descriptor. More...
 
template<typename Type >
InferenceEngine::TBlob< Type >::Ptr make_shared_blob (const TensorDesc &tensorDesc, Type *ptr, size_t size=0)
 Creates a blob with the given tensor descriptor from the pointer to the pre-allocated memory. More...
 
template<typename Type >
InferenceEngine::TBlob< Type >::Ptr make_shared_blob (const TensorDesc &tensorDesc, const std::shared_ptr< InferenceEngine::IAllocator > &alloc)
 Creates a blob with the given tensor descriptor and allocator. More...
 
template<typename TypeTo >
InferenceEngine::TBlob< TypeTo >::Ptr make_shared_blob (const TBlob< TypeTo > &arg)
 Creates a copy of given TBlob instance. More...
 
template<typename T , typename... Args, typename std::enable_if< std::is_base_of< Blob, T >::value, int >::type = 0>
std::shared_ptr< T > make_shared_blob (Args &&... args)
 Creates a Blob object of the specified type. More...
 
Blob::Ptr make_shared_blob (const Blob::Ptr &inputBlob, const ROI &roi)
 Creates a blob describing given ROI object based on the given blob with pre-allocated memory. More...
 
std::ostream & operator<< (std::ostream &out, const Layout &p)
 
std::ostream & operator<< (std::ostream &out, const ColorFormat &fmt)
 
template<>
std::shared_ptr< IShapeInferExtensionmake_so_pointer (const file_name_t &name)
 Creates a special shared_pointer wrapper for the given type from a specific shared module. More...
 
template<>
std::shared_ptr< IExtensionmake_so_pointer (const file_name_t &name)
 Creates a special shared_pointer wrapper for the given type from a specific shared module. More...
 
StatusCode CreateExtension (IExtension *&ext, ResponseDesc *resp) noexcept
 Creates the default instance of the extension. More...
 
StatusCode CreateShapeInferExtension (IShapeInferExtension *&ext, ResponseDesc *resp) noexcept
 Creates the default instance of the shape infer extension. More...
 
template<typename F >
void parallel_nt (int nthr, const F &func)
 
template<typename F >
void parallel_nt_static (int nthr, const F &func)
 
template<typename I , typename F >
void parallel_sort (I begin, I end, const F &comparator)
 
template<typename T0 , typename R , typename F >
parallel_sum (const T0 &D0, const R &input, const F &func)
 
template<typename T0 , typename T1 , typename R , typename F >
parallel_sum2d (const T0 &D0, const T1 &D1, const R &input, const F &func)
 
template<typename T0 , typename T1 , typename T2 , typename R , typename F >
parallel_sum3d (const T0 &D0, const T1 &D1, const T2 &D2, const R &input, const F &func)
 
template<typename T >
parallel_it_init (T start)
 
template<typename T , typename Q , typename R , typename... Args>
parallel_it_init (T start, Q &x, const R &X, Args &&... tuple)
 
bool parallel_it_step ()
 
template<typename Q , typename R , typename... Args>
bool parallel_it_step (Q &x, const R &X, Args &&... tuple)
 
template<typename T , typename Q >
void splitter (const T &n, const Q &team, const Q &tid, T &n_start, T &n_end)
 
template<typename T0 , typename F >
void for_1d (const int &ithr, const int &nthr, const T0 &D0, const F &func)
 
template<typename T0 , typename F >
void parallel_for (const T0 &D0, const F &func)
 
template<typename T0 , typename T1 , typename F >
void for_2d (const int &ithr, const int &nthr, const T0 &D0, const T1 &D1, const F &func)
 
template<typename T0 , typename T1 , typename F >
void parallel_for2d (const T0 &D0, const T1 &D1, const F &func)
 
template<typename T0 , typename T1 , typename T2 , typename F >
void for_3d (const int &ithr, const int &nthr, const T0 &D0, const T1 &D1, const T2 &D2, const F &func)
 
template<typename T0 , typename T1 , typename T2 , typename F >
void parallel_for3d (const T0 &D0, const T1 &D1, const T2 &D2, const F &func)
 
template<typename T0 , typename T1 , typename T2 , typename T3 , typename F >
void for_4d (const int &ithr, const int &nthr, const T0 &D0, const T1 &D1, const T2 &D2, const T3 &D3, const F &func)
 
template<typename T0 , typename T1 , typename T2 , typename T3 , typename F >
void parallel_for4d (const T0 &D0, const T1 &D1, const T2 &D2, const T3 &D3, const F &func)
 
template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename F >
void for_5d (const int &ithr, const int &nthr, const T0 &D0, const T1 &D1, const T2 &D2, const T3 &D3, const T4 &D4, const F &func)
 
template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename F >
void parallel_for5d (const T0 &D0, const T1 &D1, const T2 &D2, const T3 &D3, const T4 &D4, const F &func)
 
StatusCode CreatePluginEngine (IInferencePlugin *&plugin, ResponseDesc *resp) noexcept
 Creates the default instance of the interface (per plugin) More...
 
RemoteBlob::Ptr make_shared_blob (const TensorDesc &desc, RemoteContext::Ptr ctx)
 A wrapper of CreateBlob method of RemoteContext to keep consistency with plugin-specific wrappers. More...
 
std::string fileNameToString (const file_name_t &str)
 Conversion from possibly-wide character string to a single-byte chain.
 
file_name_t stringToFileName (const std::string &str)
 Conversion from single-byte character string to a possibly-wide one.
 
const VersionGetInferenceEngineVersion () noexcept
 Gets the current Inference Engine version. More...
 
template<class T >
InferenceEngine utility functions are not a part of public API Will be removed in R2 void TopResults (unsigned int n, TBlob< T > &input, std::vector< unsigned > &output)
 Gets the top n results from a tblob. More...
 
InferenceEngine utility functions are not a part of public API Will be removed in R2 void TopResults (unsigned int n, Blob &input, std::vector< unsigned > &output)
 Gets the top n results from a blob. More...
 
template<typename data_t >
InferenceEngine utility functions are not a part of public API Will be removed in R2 void copyFromRGB8 (uint8_t *RGB8, size_t RGB8_size, InferenceEngine::TBlob< data_t > *blob)
 Copies a 8-bit RGB image to the blob. More...
 
InferenceEngine utility functions are not a part of public API Will be removed in R2 void ConvertImageToInput (unsigned char *imgBufRGB8, size_t lengthbytesSize, Blob &input)
 Splits the RGB channels to either I16 Blob or float blob. More...
 
template<typename T >
InferenceEngine utility functions are not a part of public API Will be removed in R2 void copyToFloat (float *dst, const InferenceEngine::Blob *src)
 Copies data from a certain precision to float. More...
 

Variables

constexpr const int MAX_DIMS_NUMBER = 12
 

Detailed Description

Inference Engine API.

Typedef Documentation

§ idx_t

using InferenceEngine::idx_t = typedef size_t

A type of network objects indexes.

Deprecated:
Use ngraph API instead.

§ InferenceEnginePluginPtr

using InferenceEngine::InferenceEnginePluginPtr = typedef InferenceEngine::details::SOPointer<IInferencePlugin>

A C++ helper to work with objects created by the plugin.

Implements different interfaces.

§ SizeVector

using InferenceEngine::SizeVector = typedef std::vector<size_t>

Represents tensor size.

The order is opposite to the order in Caffe*: (w,h,n,b) where the most frequently changing element in memory is first.

Enumeration Type Documentation

§ ColorFormat

Extra information about input color format for preprocessing.

Enumerator
RAW 

Plain blob (default), no extra color processing required.

RGB 

RGB color format.

BGR 

BGR color format, default in DLDT.

RGBX 

RGBX color format with X ignored during inference.

BGRX 

BGRX color format with X ignored during inference.

NV12 

NV12 color format represented as compound Y+UV blob.

I420 

I420 color format represented as compound Y+U+V blob.

§ MeanVariant

Defines available types of mean.

Enumerator
MEAN_IMAGE 

mean value is specified for each input pixel

MEAN_VALUE 

mean value is specified for each input channel

NONE 

no mean value specified

Function Documentation

§ as() [1/2]

template<typename T , typename std::enable_if<!std::is_pointer< T >::value &&!std::is_reference< T >::value, int >::type = 0, typename std::enable_if< std::is_base_of< Blob, T >::value, int >::type = 0>
std::shared_ptr<T> InferenceEngine::as ( const Blob::Ptr blob)
noexcept

Helper cast function to work with shared Blob objects.

Returns
shared_ptr to the type T. Returned shared_ptr shares ownership of the object with the input Blob::Ptr

§ as() [2/2]

template<typename T , typename std::enable_if<!std::is_pointer< T >::value &&!std::is_reference< T >::value, int >::type = 0, typename std::enable_if< std::is_base_of< Blob, T >::value, int >::type = 0>
std::shared_ptr<const T> InferenceEngine::as ( const Blob::CPtr blob)
noexcept

Helper cast function to work with shared Blob objects.

Returns
shared_ptr to the type const T. Returned shared_ptr shares ownership of the object with the input Blob::Ptr

§ ConvertImageToInput()

InferenceEngine utility functions are not a part of public API Will be removed in R2 void InferenceEngine::ConvertImageToInput ( unsigned char *  imgBufRGB8,
size_t  lengthbytesSize,
Blob input 
)
inline

Splits the RGB channels to either I16 Blob or float blob.

Deprecated:
InferenceEngine utility functions are not a part of public API

The image buffer is assumed to be packed with no support for strides.

Parameters
imgBufRGB8Packed 24bit RGB image (3 bytes per pixel: R-G-B)
lengthbytesSizeSize in bytes of the RGB image. It is equal to amount of pixels times 3 (number of channels)
inputBlob to contain the split image (to 3 channels)

§ copyFromRGB8()

template<typename data_t >
InferenceEngine utility functions are not a part of public API Will be removed in R2 void InferenceEngine::copyFromRGB8 ( uint8_t *  RGB8,
size_t  RGB8_size,
InferenceEngine::TBlob< data_t > *  blob 
)

Copies a 8-bit RGB image to the blob.

Deprecated:
InferenceEngine utility functions are not a part of public API

Throws an exception in case of dimensions or input size mismatch

Template Parameters
data_tType of the target blob
Parameters
RGB88-bit RGB image
RGB8_sizeSize of the image
blobTarget blob to write image to

§ copyToFloat()

template<typename T >
InferenceEngine utility functions are not a part of public API Will be removed in R2 void InferenceEngine::copyToFloat ( float *  dst,
const InferenceEngine::Blob src 
)

Copies data from a certain precision to float.

Deprecated:
InferenceEngine utility functions are not a part of public API
Parameters
dstPointer to an output float buffer, must be allocated before the call
srcSource blob to take data from

§ CreateDefaultAllocator()

InferenceEngine::IAllocator* InferenceEngine::CreateDefaultAllocator ( )
noexcept

Creates the default implementation of the Inference Engine allocator per plugin.

Returns
The Inference Engine IAllocator* instance

§ CreateExtension()

StatusCode InferenceEngine::CreateExtension ( IExtension *&  ext,
ResponseDesc resp 
)
noexcept

Creates the default instance of the extension.

Parameters
extExtension interface
respResponse description
Returns
Status code

§ CreatePluginEngine()

StatusCode InferenceEngine::CreatePluginEngine ( IInferencePlugin *&  plugin,
ResponseDesc resp 
)
noexcept

Creates the default instance of the interface (per plugin)

Parameters
pluginPointer to the plugin
respPointer to the response message that holds a description of an error if any occurred
Returns
Status code of the operation. InferenceEngine::OK if succeeded

§ CreateShapeInferExtension()

StatusCode InferenceEngine::CreateShapeInferExtension ( IShapeInferExtension *&  ext,
ResponseDesc resp 
)
noexcept

Creates the default instance of the shape infer extension.

Parameters
extShape Infer Extension interface
respResponse description
Returns
Status code

§ GetInferenceEngineVersion()

const Version* InferenceEngine::GetInferenceEngineVersion ( )
noexcept

Gets the current Inference Engine version.

Returns
The current Inference Engine version

§ make_shared_blob() [1/7]

RemoteBlob::Ptr InferenceEngine::make_shared_blob ( const TensorDesc desc,
RemoteContext::Ptr  ctx 
)
inline

A wrapper of CreateBlob method of RemoteContext to keep consistency with plugin-specific wrappers.

Parameters
descDefines the layout and dims of the blob
ctxPoniter to the plugin object derived from RemoteContext.
Returns
A pointer to plugin object that implements RemoteBlob interface.

§ make_shared_blob() [2/7]

template<typename Type >
InferenceEngine::TBlob<Type>::Ptr InferenceEngine::make_shared_blob ( const TensorDesc tensorDesc)
inline

Creates a blob with the given tensor descriptor.

Template Parameters
TypeType of the shared pointer to be created
Parameters
tensorDescTensor descriptor for Blob creation
Returns
A shared pointer to the newly created blob of the given type

§ make_shared_blob() [3/7]

template<typename Type >
InferenceEngine::TBlob<Type>::Ptr InferenceEngine::make_shared_blob ( const TensorDesc tensorDesc,
Type *  ptr,
size_t  size = 0 
)
inline

Creates a blob with the given tensor descriptor from the pointer to the pre-allocated memory.

Template Parameters
TypeType of the shared pointer to be created
Parameters
tensorDescTensorDesc for Blob creation
ptrPointer to the pre-allocated memory
sizeLength of the pre-allocated array
Returns
A shared pointer to the newly created blob of the given type

§ make_shared_blob() [4/7]

template<typename Type >
InferenceEngine::TBlob<Type>::Ptr InferenceEngine::make_shared_blob ( const TensorDesc tensorDesc,
const std::shared_ptr< InferenceEngine::IAllocator > &  alloc 
)
inline

Creates a blob with the given tensor descriptor and allocator.

Template Parameters
TypeType of the shared pointer to be created
Parameters
tensorDescTensor descriptor for Blob creation
allocShared pointer to IAllocator to use in the blob
Returns
A shared pointer to the newly created blob of the given type

§ make_shared_blob() [5/7]

template<typename TypeTo >
InferenceEngine::TBlob<TypeTo>::Ptr InferenceEngine::make_shared_blob ( const TBlob< TypeTo > &  arg)
inline

Creates a copy of given TBlob instance.

Template Parameters
TypeToType of the shared pointer to be created
Parameters
arggiven pointer to blob
Returns
A shared pointer to the newly created blob of the given type

§ make_shared_blob() [6/7]

template<typename T , typename... Args, typename std::enable_if< std::is_base_of< Blob, T >::value, int >::type = 0>
std::shared_ptr<T> InferenceEngine::make_shared_blob ( Args &&...  args)

Creates a Blob object of the specified type.

Parameters
argsConstructor arguments for the Blob object
Returns
A shared pointer to the newly created Blob object

§ make_shared_blob() [7/7]

Blob::Ptr InferenceEngine::make_shared_blob ( const Blob::Ptr inputBlob,
const ROI roi 
)

Creates a blob describing given ROI object based on the given blob with pre-allocated memory.

Parameters
inputBloboriginal blob with pre-allocated memory.
roiA ROI object inside of the original blob.
Returns
A shared pointer to the newly created blob.

§ make_so_pointer() [1/3]

template<class T >
std::shared_ptr<T> InferenceEngine::make_so_pointer ( const file_name_t &  name)
inlinedelete

Creates a special shared_pointer wrapper for the given type from a specific shared module.

Parameters
nameName of the shared library file
nameName of the shared library file
Returns
shared_pointer A wrapper for the given type from a specific shared module

§ make_so_pointer() [2/3]

template<>
std::shared_ptr<IShapeInferExtension> InferenceEngine::make_so_pointer ( const file_name_t &  name)
inlinedelete

Creates a special shared_pointer wrapper for the given type from a specific shared module.

Parameters
nameName of the shared library file
Returns
shared_pointer A wrapper for the given type from a specific shared module

§ make_so_pointer() [3/3]

template<>
std::shared_ptr<IExtension> InferenceEngine::make_so_pointer ( const file_name_t &  name)
inlinedelete

Creates a special shared_pointer wrapper for the given type from a specific shared module.

Parameters
nameName of the shared library file
Returns
shared_pointer A wrapper for the given type from a specific shared module

§ TopResults() [1/2]

template<class T >
InferenceEngine utility functions are not a part of public API Will be removed in R2 void InferenceEngine::TopResults ( unsigned int  n,
TBlob< T > &  input,
std::vector< unsigned > &  output 
)
inline

Gets the top n results from a tblob.

Deprecated:
InferenceEngine utility functions are not a part of public API
Parameters
nTop n count
input1D tblob that contains probabilities
outputVector of indexes for the top n places

§ TopResults() [2/2]

InferenceEngine utility functions are not a part of public API Will be removed in R2 void InferenceEngine::TopResults ( unsigned int  n,
Blob input,
std::vector< unsigned > &  output 
)
inline

Gets the top n results from a blob.

Deprecated:
InferenceEngine utility functions are not a part of public API
Parameters
nTop n count
input1D blob that contains probabilities
outputVector of indexes for the top n places