28 class SOCreatorTrait<IExtension> {
33 static constexpr
auto name =
"CreateExtension";
42 class INFERENCE_ENGINE_DEPRECATED("Implement IExtension") SOCreatorTrait<IShapeInferExtension> {
47 static constexpr
auto name =
"CreateShapeInferExtension";
55 IE_SUPPRESS_DEPRECATED_START_WIN
56 class INFERENCE_ENGINE_API_CLASS(Extension) :
public IExtension {
71 actual->GetVersion(versionInfo);
81 IE_SUPPRESS_DEPRECATED_START
82 INFERENCE_ENGINE_DEPRECATED(
"IErrorListener is not used anymore. StatusCode is provided in case of unexpected situations")
84 actual->SetLogCallback(listener);
86 IE_SUPPRESS_DEPRECATED_END
110 INFERENCE_ENGINE_DEPRECATED(
"Use IExtension::getImplTypes to get implementation types for a particular node")
112 IE_SUPPRESS_DEPRECATED_START
113 return actual->getPrimitiveTypes(types, size, resp);
114 IE_SUPPRESS_DEPRECATED_END
127 IE_SUPPRESS_DEPRECATED_START
128 INFERENCE_ENGINE_DEPRECATED(
"Use IExtension::getImplementation to get a concrete implementation")
131 return actual->getFactoryFor(factory, cnnLayer, resp);
133 IE_SUPPRESS_DEPRECATED_END
145 IE_SUPPRESS_DEPRECATED_START
146 INFERENCE_ENGINE_DEPRECATED(
"Implement ngraph::op::Op::validate_and_infer_types method in a custom ngraph operation")
148 return actual->getShapeInferImpl(impl,
type, resp);
150 IE_SUPPRESS_DEPRECATED_END
162 INFERENCE_ENGINE_DEPRECATED(
"Implement ngraph::op::Op::validate_and_infer_types method in a custom ngraph operation")
164 IE_SUPPRESS_DEPRECATED_START
165 return actual->getShapeInferTypes(types, size, resp);
166 IE_SUPPRESS_DEPRECATED_END
174 std::map<std::string, ngraph::OpSet> getOpSets()
override;
181 std::vector<std::string>
getImplTypes(
const std::shared_ptr<ngraph::Node>& node)
override {
182 return actual->getImplTypes(node);
192 return actual->getImplementation(node, implType);
199 InferenceEngine::details::SOPointer<IExtension>
actual;
214 IE_SUPPRESS_DEPRECATED_START_WIN
216 IE_SUPPRESS_DEPRECATED_END_WIN
224 actual->GetVersion(versionInfo);
234 IE_SUPPRESS_DEPRECATED_START
235 INFERENCE_ENGINE_DEPRECATED(
"IErrorListener is not used anymore. StatusCode is provided in case of unexpected situations")
237 actual->SetLogCallback(listener);
239 IE_SUPPRESS_DEPRECATED_END
253 INFERENCE_ENGINE_DEPRECATED(
"Implement ngraph::op::Op::validate_and_infer_types method in a custom ngraph operation")
255 IE_SUPPRESS_DEPRECATED_START
256 return actual->getShapeInferTypes(types, size, resp);
257 IE_SUPPRESS_DEPRECATED_END
260 INFERENCE_ENGINE_DEPRECATED(
"Implement ngraph::op::Op::validate_and_infer_types method in a custom ngraph operation")
262 IE_SUPPRESS_DEPRECATED_START
263 return actual->getShapeInferImpl(impl,
type, resp);
264 IE_SUPPRESS_DEPRECATED_END
271 InferenceEngine::details::SOPointer<IShapeInferExtension>
actual;
273 IE_SUPPRESS_DEPRECATED_END_WIN
284 IE_SUPPRESS_DEPRECATED_START
285 return std::make_shared<ShapeInferExtension>(
name);
286 IE_SUPPRESS_DEPRECATED_END
297 return std::make_shared<Extension>(
name);
ShapeInferExtension(const file_name_t &name)
Loads extension from a shared library.
Definition: ie_extension.h:215
This class provides interface for the implementation with the custom execution code.
Definition: ie_iextension.h:186
void Release() noexcept override
Does nothing since destruction is done via the regular mechanism.
Definition: ie_extension.h:98
InferenceEngine::details::SOPointer< IShapeInferExtension > actual
A SOPointer instance to the loaded templated object.
Definition: ie_extension.h:271
Inference Engine API.
Definition: ie_argmax_layer.hpp:15
Represents version information that describes plugins and the inference engine runtime library...
Definition: ie_version.hpp:21
std::string name
Layer name.
Definition: ie_layers.h:42
InferenceEngine::details::SOPointer< IExtension > actual
A SOPointer instance to the loaded templated object.
Definition: ie_extension.h:199
This class provides interface for extension factories.
Definition: ie_iextension.h:154
Extension(const file_name_t &name)
Loads extension from a shared library.
Definition: ie_extension.h:63
void Unload() noexcept override
Cleans the resources up.
Definition: ie_extension.h:91
void Release() noexcept override
Does nothing since destruction is done via the regular mechanism.
Definition: ie_extension.h:251
Represents detailed information for an error.
Definition: ie_common.h:247
StatusCode
This enum contains codes for all possible return values of the interface functions.
Definition: ie_common.h:224
void Unload() noexcept override
Cleans the resources up.
Definition: ie_extension.h:244
std::vector< std::string > getImplTypes(const std::shared_ptr< ngraph::Node > &node) override
Returns vector of implementation types.
Definition: ie_extension.h:181
This is a header file for Inference Engine Extension Interface.
std::shared_ptr< ILayerImpl > Ptr
A shared pointer to the ILayerImpl interface.
Definition: ie_iextension.h:94
void GetVersion(const InferenceEngine::Version *&versionInfo) const noexcept override
Gets the extension version information.
Definition: ie_extension.h:223
void GetVersion(const InferenceEngine::Version *&versionInfo) const noexcept override
Gets the extension version information.
Definition: ie_extension.h:70
This class is a C++ helper to work with objects created using extensions.
Definition: ie_extension.h:206
std::string type
Layer type.
Definition: ie_layers.h:47
This class represents a custom error listener.
Definition: ie_error.hpp:18
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:213
This class is the main extension interface.
Definition: ie_iextension.h:274
ILayerImpl::Ptr getImplementation(const std::shared_ptr< ngraph::Node > &node, const std::string &implType) override
Returns implementation for specific nGraph op.
Definition: ie_extension.h:191
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:283
This class is a C++ helper to work with objects created using extensions.
Definition: ie_extension.h:56