class ngraph::pass::low_precision::QuantizationGranularityRestriction

#include <quantization_granularity_restriction.hpp>

class QuantizationGranularityRestriction
{
public:
    // fields

    ngraph::Node::type_info_t operationType;
    bool specifyVersion;
    std::vector<PortQuantizationGranularityRestriction> restrictions;

    // construction

    QuantizationGranularityRestriction();

    QuantizationGranularityRestriction(
        const ngraph::Node::type_info_t operationType,
        const bool specifyVersion,
        const std::vector<PortQuantizationGranularityRestriction>& restrictions
        );

    // methods

    template <typename T>
    static QuantizationGranularityRestriction create(
        const std::vector<PortQuantizationGranularityRestriction>& restrictions,
        const bool specifyVersion
        );

    template <typename T>
    static QuantizationGranularityRestriction create(
        const std::vector<size_t>& restrictedPorts = {},
        const bool specifyVersion = false
        );

    template <typename T>
    static std::vector<PortQuantizationGranularityRestriction> getPrecisionsByOperationType(std::vector<QuantizationGranularityRestriction>& restrictions);
};