class ov::pass::Manager¶
Overview¶
Manager class allows to manage transformation passes. More…
#include <manager.hpp>
class Manager
{
public:
// construction
Manager();
Manager();
// methods
template <, , >
std::shared_ptr<T>Args&&... register_pass();
std::shared_ptr<PassBase>std::shared_ptr<PassBase> register_pass_instance();
boolstd::shared_ptr<Model> run_passes();
voidbool set_pass_visualization();
voidbool set_per_pass_validation();
std::shared_ptr<PassConfig> get_pass_config();
};
Detailed Documentation¶
Manager class allows to manage transformation passes.
Methods¶
template <, , >
std::shared_ptr<T>Args&&... register_pass()
Register given transformation class type to execution list Example below show the basic usage of pass::Manager.
pass::Manager manager;
manager.register_pass<MyTransformation>(/\*transformation constructor ars\*‍/);
manager.run_passes(f);
For some purposes transformation can be registered and disabled by default.
manager.register_pass<MyTransformation, false>();
Returns:
shared_ptr to the transformation instance
boolstd::shared_ptr<Model> run_passes()
Runs registered transformations on a given model.
Parameters:
model |
Input model |
Returns:
Returns true if the model was changed by transformations, false otherwise.
voidbool set_per_pass_validation()
Set flag to enable/disable running Validate pass after executing each registered pass.
Parameters:
new_state |
Value “true” enables Validate pass run; “false”, otherwise |
std::shared_ptr<PassConfig> get_pass_config()
Returns:
PassConfig shared object. This object is used for transformations pipeline configuration. This object allows to disable/enable transformations execution, set callback to particular transformation. For mo details see PassConfig class.