class ngraph::pass::low_precision::WeightableLayerTransformation

WeightableLayerTransformation is base type for weightable operation transformation.

#include <weightable_layer_transformation.hpp>

class WeightableLayerTransformation: public ngraph::pass::low_precision::LayerTransformation
{
public:
    // construction

    WeightableLayerTransformation();

    // methods

    virtual boolconst TransformationContext&std::shared_ptr<Node> canBeTransformed(
        ,

        ) const;

    boolconst TransformationContext&std::shared_ptr<Node>const std::vector<ngraph::element::Type>& canConvolutionBeTransformed(
        ,
        ,

        ) const;

    virtual boolstd::shared_ptr<Node> isPrecisionPreserved() const;

    static boolconst std::shared_ptr<const ngraph::Node>&const std::vector<ngraph::element::Type>& checkPrecisionOnActivation(
        ,

        );

    static boolconst std::shared_ptr<const Node>&const boolconst std::vector<ngraph::element::Type>& isQuantizedStatic(
        ,
        ,

        );

    static std::shared_ptr<ov::opset1::FakeQuantize>const std::shared_ptr<Node>& getFakeQuantizeOnWeights();

    static DataPrecisionconst std::shared_ptr<Node>&const std::vector<ngraph::element::Type>& getDataPrecisionOnWeights(
        ,

        );

    static boolconst std::shared_ptr<const Node>&const std::vector<ngraph::element::Type>& isAsymmetricOnWeights(
        ,

        );
};

// direct descendants

class ConvolutionBackpropDataTransformation;
class ConvolutionTransformation;

Inherited Members

public:
    // typedefs

    typedef DiscreteTypeInfo type_info_t;

    // classes

    class Params;
    class PrecisionDetails;

    // methods

    boolconst PassPropertyMask& get_property() const;
    voidconst std::string& set_name();
    std::string get_name() const;
    voidconst param_callback& set_callback();
    virtual voidconst std::shared_ptr<PassConfig>& set_pass_config();
    std::shared_ptr<PassConfig> get_pass_config();
    boolconst std::shared_ptr<const Node>& transformation_callback();
    virtual const type_info_t& get_type_info() const = 0;
    "ov::pass::MatcherPass" OPENVINO_RTTI();
    MatcherPass&const MatcherPass& operator = ();
    boolstd::shared_ptr<ov::Node> apply();

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

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

    std::shared_ptr<ov::Node>const std::shared_ptr<ov::Node>& register_new_node_();
    const std::vector<std::shared_ptr<ov::Node>>& get_new_nodes();
    void clear_new_nodes();
    std::shared_ptr<pattern::Matcher> get_matcher();
    virtual boolTransformationContext&ov::pass::pattern::Matcher& transform(, ) = 0;
    voidTransformationContext \* setContext();
    voidconst bool setUpdatePrecisions();
    voidconst std::vector<ngraph::element::Type>& setDefaultPrecisions();

    virtual boolconst TransformationContext&std::shared_ptr<Node> canBeTransformed(
        ,

        ) const;

    boolconst std::shared_ptr<Node>&const FakeQuantizeDequantization& canSubtractBeHandled(
        ,

        ) const;

    virtual boolconst std::shared_ptr<const Node>&const std::vector<ngraph::element::Type>& isQuantized(
        ,

        ) const;

    virtual boolstd::shared_ptr<Node> isPrecisionPreserved() const = 0;

    static boolconst std::shared_ptr<Node>&const std::vector<ngraph::element::Type>& canBeTransformedStatic(
        ,

        );

    static PrecisionDetailsconst size_tconst std::vector<float>&const std::vector<float>& getPrecisionDetails(
        ,
        ,

        );

    static PrecisionDetailsconst QuantizationDetails& getPrecisionDetails();

    static boolconst std::shared_ptr<const Node>&const std::vector<ngraph::element::Type>& isAsymmetricQuantization(
        ,

        );

    static DataPrecisionconst std::shared_ptr<Node>&const QuantizationDetails&const std::vector<element::Type>& getDataPrecision(
        ,
        ,

        );