class ov::pass::NodeRegistry

Overview

Register openvino node pointers into container. Can create and/or add existing node pointers into register. More…

#include <graph_rewrite.hpp>

class NodeRegistry
{
public:
    // methods

    template <typename T, class... Args>
    std::shared_ptr<T> make(Args&&... args);

    template <typename T>
    std::shared_ptr<T> add(const std::shared_ptr<T>& node);

    const std::vector<std::shared_ptr<Node>>& get() const;
    void clear();
};

Detailed Documentation

Register openvino node pointers into container. Can create and/or add existing node pointers into register.

Methods

template <typename T, class... Args>
std::shared_ptr<T> make(Args&&... args)

Make new node and add it to register.

Parameters:

T

Node type.

Args

Node ctor args types.

args

New node ctor arguments.

Returns:

Shared pointer to node of type T.

template <typename T>
std::shared_ptr<T> add(const std::shared_ptr<T>& node)

Add node to register.

Parameters:

T

Node type.

node

Node to add

Returns:

Shared pointer to new node added of type T.

const std::vector<std::shared_ptr<Node>>& get() const

Get nodes container.

Returns:

Const reference to nodes container.

void clear()

Clear register.