class ov::pass::ModelPass

Base class for Model passes.

#include <pass.hpp>

class ModelPass: public ov::pass::PassBase
{
public:
    // methods

    OPENVINO_RTTI("ov::pass::ModelPass");
    virtual bool run_on_function(std::shared_ptr<ov::Model> m);
    virtual bool run_on_model(const std::shared_ptr<ov::Model>& m);
};

// direct descendants

class ConvertOpSet1ToLegacy;
class GenerateMappingFile;
class POTTransformations;
class Pruning;
class ShrinkWeights;
class AlignQuantizationIntervals;
class AlignQuantizationParameters;
class LowPrecision;
class MarkupAvgPoolPrecisionPreserved;
class MarkupCanBeQuantized;
class MarkupOptimizations;
class MarkupPrecisions;
class MarkupQuantizationGranularity;
class PropagatePrecisions;

template <class AttributeType>
class PropagateSharedValue;

template AlignElementType;
template AssignRegisters;
template CommonFakeQuantizeDecomposition;
template EnumerateNodes;
class ChangePlaceholderTypes;
class CommonOptimizations;
class ConstantFolding;
class ConvertCompressedOnlyToLegacy;
class ConvertFP32ToFP16;
class ConvertOpSet2ToOpSet1;
class ConvertOpSet3ToOpSet2;
class ConvertPrecision;
class FindBatch;
class FixRtInfo;
class FusedNamesCleanup;
class GraphRewrite;
class GroupedStridedSliceOptimizer;
class Hash;
class InitNodeInfo;
class LSTMStatesBroadcast;
class LowLatency2;
class MOCLegacyTransformations;
class MOCTransformations;
class MakeStateful;
class MarkPrecisionSensitiveDivides;
class MarkPrecisionSensitiveSubgraphs;
class MimicSetBatchSize;
class ResolveNameCollisions;
class ReverseInputChannelsFusion;
class Serialize;
class SetBatchSize;
class SharedShapeOf;
class SharedSqueeze;
class SharedStridedSliceEraser;
class SmartReshape;
class StreamSerialize;
class StridedSliceOptimization;
class UnrollIf;
class UnrollTensorIterator;
class UselessStridedSliceEraser;
class Validate;
class VisualizeTree;

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;