class ov::pass::ModelPass

Base class for Model passes.

#include <pass.hpp>

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

    "ov::pass::ModelPass" OPENVINO_RTTI();
    virtual boolconst std::shared_ptr<ov::Model>& run_on_model() = 0;
};

// direct descendants

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

template <>
class PropagateSharedValue;

class AlignMixedFP32FP16Types;
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 GroupedSliceToVSplitOptimization;
class GroupedStridedSliceOptimizer;
class Hash;
class InitNodeInfo;
class LSTMStatesBroadcast;
class LowLatency2;
class MOCLegacyTransformations;
class MOCTransformations;
class MakeStateful;
class MarkPrecisionSensitiveShapeOfSubgraphs;
class MarkSugraphsToKeepInMixedPrecision;
class MimicSetBatchSize;
class PushConstantToSubgraph;
class RemoveMultiSubGraphOpDanglingParamsResults;
class ResolveNameCollisions;
class ReverseInputChannelsFusion;
class ReverseShapeAndTypeInfer;
class Serialize;
class SetBatchSize;
class SharedOpOptimization;
class SharedSqueeze;
class SharedStridedSliceEraser;
class SmartReshape;
class StreamSerialize;
class StridedSliceOptimization;
class UnrollIf;
class UnrollTensorIterator;
class UselessStridedSliceEraser;
class Validate;
class VisualizeTree;
class TSGeneral;

Inherited Members

public:
    // typedefs

    typedef DiscreteTypeInfo type_info_t;

    // 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;