24 class SOCreatorTrait<IExtension> {
29 static constexpr
auto name =
"CreateExtension";
36 class SOCreatorTrait<IShapeInferExtension> {
41 static constexpr
auto name =
"CreateShapeInferExtension";
63 actual->GetVersion(versionInfo);
71 actual->SetLogCallback(listener);
94 return actual->getPrimitiveTypes(types, size, resp);
106 return actual->getFactoryFor(factory, cnnLayer, resp);
110 return actual->getShapeInferImpl(impl, type, resp);
117 InferenceEngine::details::SOPointer<IExtension>
actual;
137 actual->GetVersion(versionInfo);
145 actual->SetLogCallback(listener);
168 return actual->getShapeInferTypes(types, size, resp);
178 return actual->getShapeInferImpl(impl, type, resp);
185 InferenceEngine::details::SOPointer<IShapeInferExtension>
actual;
194 inline std::shared_ptr<IShapeInferExtension>
make_so_pointer(
const file_name_t &name) {
195 return std::make_shared<ShapeInferExtension>(name);
205 return std::make_shared<Extension>(name);
ShapeInferExtension(const file_name_t &name)
Loads extension from a shared library.
Definition: ie_extension.h:129
void Release() noexcept override
Does nothing since destruction is done via the regular mechanism.
Definition: ie_extension.h:84
InferenceEngine::details::SOPointer< IShapeInferExtension > actual
A SOPointer instance to the loaded templated object.
Definition: ie_extension.h:185
Definition: ie_argmax_layer.hpp:11
Represents version information that describes plugins and the inference engine runtime library...
Definition: ie_version.hpp:20
StatusCode getFactoryFor(ILayerImplFactory *&factory, const CNNLayer *cnnLayer, ResponseDesc *resp) noexcept override
Gets the factory with implementations for a given layer.
Definition: ie_extension.h:104
StatusCode
This enum contains codes for all possible return values of the interface functions.
Definition: ie_common.h:175
StatusCode getShapeInferImpl(IShapeInferImpl::Ptr &impl, const char *type, ResponseDesc *resp) noexcept override
Gets shape propagation implementation for the given string-type of cnn Layer.
Definition: ie_extension.h:177
InferenceEngine::details::SOPointer< IExtension > actual
A SOPointer instance to the loaded templated object.
Definition: ie_extension.h:117
This class provides interface for extension factories.
Definition: ie_iextension.h:119
Extension(const file_name_t &name)
Loads extension from a shared library.
Definition: ie_extension.h:55
void Unload() noexcept override
Cleans the resources up.
Definition: ie_extension.h:77
void Release() noexcept override
Does nothing since destruction is done via the regular mechanism.
Definition: ie_extension.h:158
Represents detailed information for an error.
Definition: ie_common.h:198
void Unload() noexcept override
Cleans the resources up.
Definition: ie_extension.h:151
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...
Definition: ie_extension.h:194
This is a header file for Inference Engine Extension Interface.
void GetVersion(const InferenceEngine::Version *&versionInfo) const noexcept override
Gets the extension version information.
Definition: ie_extension.h:136
void SetLogCallback(InferenceEngine::IErrorListener &listener) noexcept override
Sets a log callback that is used to track what is going on inside.
Definition: ie_extension.h:70
StatusCode getShapeInferImpl(IShapeInferImpl::Ptr &impl, const char *type, ResponseDesc *resp) noexcept override
Gets shape propagation implementation for the given string-type of cnn Layer.
Definition: ie_extension.h:109
This is a base abstraction Layer - all DNN Layers inherit from this class.
Definition: ie_layers.h:40
void GetVersion(const InferenceEngine::Version *&versionInfo) const noexcept override
Gets the extension version information.
Definition: ie_extension.h:62
This class is a C++ helper to work with objects created using extensions.
Definition: ie_extension.h:123
StatusCode getPrimitiveTypes(char **&types, unsigned int &size, ResponseDesc *resp) noexcept override
Gets the array with types of layers which are included in the extension.
Definition: ie_extension.h:93
This class represents a custom error listener. Plugin consumers can provide it via InferenceEngine::S...
Definition: ie_error.hpp:16
This is a wrapper class for handling plugin instantiation and releasing resources.
This class is the reader extension interface to provide implementation for shape propagation.
Definition: ie_iextension.h:185
This class is the main extension interface.
Definition: ie_iextension.h:228
void SetLogCallback(InferenceEngine::IErrorListener &listener) noexcept override
Sets a log callback that is used to track what is going on inside.
Definition: ie_extension.h:144
StatusCode getShapeInferTypes(char **&types, unsigned int &size, ResponseDesc *resp) noexcept override
Gets the array with types of layers which are included in the extension.
Definition: ie_extension.h:167
This class is a C++ helper to work with objects created using extensions.
Definition: ie_extension.h:49