class ngraph::pass::low_precision::PropagateToInput

Overview

PropagateToInput transformation propagates AttributeType shared value attribute instances from parent output ports to consumers input ports. More…

#include <propagate_to_input.hpp>

template <typename AttributeType>
class PropagateToInput: public ov::pass::MatcherPass
{
public:
    // construction

    PropagateToInput(const std::vector<ngraph::element::Type>& defaultPrecisions = { ngraph::element::u8, ngraph::element::i8 });
};

Inherited Members

public:
    // typedefs

    typedef DiscreteTypeInfo type_info_t;

    // methods

    bool get_property(const PassPropertyMask& prop_mask) const;
    void set_name(const std::string& name);
    std::string get_name() const;
    void set_callback(const param_callback& callback);
    virtual void set_pass_config(const std::shared_ptr<PassConfig>& pass_config);
    std::shared_ptr<PassConfig> get_pass_config();
    bool m_transformation_callback(const std::shared_ptr<const Node>& node);
    bool transformation_callback(const std::shared_ptr<const Node>& node);
    virtual const type_info_t& get_type_info() const = 0;
    OPENVINO_RTTI("ov::pass::MatcherPass");
    MatcherPass& operator = (const MatcherPass&);
    bool apply(std::shared_ptr<ov::Node> node);

    template <typename T, class... Args>
    std::shared_ptr<T> register_new_node(Args&&... args);

    template <typename T>
    std::shared_ptr<T> register_new_node(const std::shared_ptr<T>& node);

    std::shared_ptr<ov::Node> register_new_node_(const std::shared_ptr<ov::Node>& node);
    const std::vector<std::shared_ptr<ov::Node>>& get_new_nodes();
    void clear_new_nodes();
    std::shared_ptr<pattern::Matcher> get_matcher();

Detailed Documentation

PropagateToInput transformation propagates AttributeType shared value attribute instances from parent output ports to consumers input ports.

For more details about the transformation, refer to PropagateToInput page in the Inference Engine Developer Guide.