7 #include "ngraph/op/op.hpp"
26 virtual std::shared_ptr<Node>
27 clone_with_new_inputs(
const OutputVector& new_args)
const override;
31 element::Type get_output_type()
const {
return m_output_type; }
32 void set_output_type(
element::Type output_type) { m_output_type = output_type; }
34 using Node::set_output_type;
42 void set_is_foldable(
bool is_foldable) { m_is_foldable = is_foldable; }
43 bool get_is_foldable()
const {
return m_is_foldable; }
44 bool evaluate(
const HostTensorVector& output_values,
45 const HostTensorVector& input_values)
const override;
47 bool evaluate_lower(
const HostTensorVector& output_values)
const override;
48 bool evaluate_upper(
const HostTensorVector& output_values)
const override;
49 bool constant_fold(OutputVector& output_values,
50 const OutputVector& input_values)
override;
53 bool m_is_foldable =
true;
64 NGRAPH_RTTI_DECLARATION;
70 virtual std::shared_ptr<Node>
71 clone_with_new_inputs(
const OutputVector& new_args)
const override;
81 void set_is_foldable(
bool is_foldable) { m_is_foldable = is_foldable; }
82 bool get_is_foldable()
const {
return m_is_foldable; }
83 bool evaluate(
const HostTensorVector& output_values,
84 const HostTensorVector& input_values)
const override;
86 bool evaluate_lower(
const HostTensorVector& output_values)
const override;
87 bool evaluate_upper(
const HostTensorVector& output_values)
const override;
88 bool constant_fold(OutputVector& output_values,
89 const OutputVector& input_values)
override;
92 bool m_is_foldable =
true;
Visits the attributes of a node, primarily for serialization-like tasks.
Definition: attribute_visitor.hpp:59
A handle for one of a node's outputs.
Definition: node_output.hpp:33
Definition: element_type.hpp:51
Root of all actual ops.
Definition: op.hpp:17
Operation that returns the shape of its input argument as a tensor.
Definition: shape_of.hpp:62
ShapeOf(const Output< Node > &arg)
Constructs a shape-of operation.
bool has_evaluate() const override
Allows to get information about availability of evaluate method for the current operation.
bool evaluate(const HostTensorVector &output_values, const HostTensorVector &input_values) const override
Evaluates the op on input_values putting results in output_values.
void validate_and_infer_types() override
Verifies that attributes and inputs are consistent and computes output shapes and element types....
Operation that returns the shape of its input argument as a tensor.
Definition: shape_of.hpp:17
const NodeTypeInfo & get_type_info() const override
Definition: shape_of.hpp:20
bool has_evaluate() const override
Allows to get information about availability of evaluate method for the current operation.
void validate_and_infer_types() override
Verifies that attributes and inputs are consistent and computes output shapes and element types....
ShapeOf(const Output< Node > &arg, const element::Type output_type=element::i64)
Constructs a shape-of operation.
bool evaluate(const HostTensorVector &output_values, const HostTensorVector &input_values) const override
Evaluates the op on input_values putting results in output_values.
The Intel nGraph C++ API.
Definition: attribute_adapter.hpp:16