class ov::BaseOpExtension¶
Overview¶
The base interface for OpenVINO operation extensions. More…
#include <op_extension.hpp>
class BaseOpExtension: public ov::Extension
{
public:
// typedefs
typedef std::shared_ptr<BaseOpExtension> Ptr;
// methods
virtual const ov::DiscreteTypeInfo& get_type_info() const = 0;
virtual ov::OutputVector create(
const ov::OutputVector& inputs,
ov::AttributeVisitor& visitor
) const = 0;
virtual std::vector<ov::Extension::Ptr> get_attached_extensions() const = 0;
};
// direct descendants
template <class T>
class OpExtension;
Detailed Documentation¶
The base interface for OpenVINO operation extensions.
Methods¶
virtual const ov::DiscreteTypeInfo& get_type_info() const = 0
Returns the type info of operation.
Returns:
virtual ov::OutputVector create(
const ov::OutputVector& inputs,
ov::AttributeVisitor& visitor
) const = 0
Method creates an OpenVINO operation.
Parameters:
inputs |
vector of input ports |
visitor |
attribute visitor which allows to read necessaty arguments |
Returns:
vector of output ports
virtual std::vector<ov::Extension::Ptr> get_attached_extensions() const = 0
Returns extensions that should be registered together with this extension class object.
Attached extensions may include frontend extensions that OpenVINO op to framework ops or necessary transformations that should be applied to the network which consist of target op.
Returns: