10 #include "ngraph/node.hpp"
11 #include "ngraph/op/op.hpp"
12 #include "ngraph/op/util/attr_types.hpp"
25 NGRAPH_RTTI_DECLARATION;
51 const std::vector<int64_t>& begin_mask,
52 const std::vector<int64_t>& end_mask,
53 const std::vector<int64_t>& new_axis_mask = std::vector<int64_t>{},
54 const std::vector<int64_t>& shrink_axis_mask = std::vector<int64_t>{},
55 const std::vector<int64_t>& ellipsis_mask = std::vector<int64_t>{});
75 const std::vector<int64_t>& begin_mask,
76 const std::vector<int64_t>& end_mask,
77 const std::vector<int64_t>& new_axis_mask = std::vector<int64_t>{},
78 const std::vector<int64_t>& shrink_axis_mask = std::vector<int64_t>{},
79 const std::vector<int64_t>& ellipsis_mask = std::vector<int64_t>{});
82 const std::vector<int64_t>& get_begin_mask()
const {
return m_begin_mask; }
83 const std::vector<int64_t>& get_end_mask()
const {
return m_end_mask; }
84 const std::vector<int64_t>& get_new_axis_mask()
const {
return m_new_axis_mask; }
85 const std::vector<int64_t>& get_shrink_axis_mask()
const
87 return m_shrink_axis_mask;
89 const std::vector<int64_t>& get_ellipsis_mask()
const {
return m_ellipsis_mask; }
91 clone_with_new_inputs(
const OutputVector& new_args)
const override;
94 bool evaluate(
const HostTensorVector& output_values,
95 const HostTensorVector& input_values)
const override;
97 bool evaluate_lower(
const HostTensorVector& outputs)
const override;
98 bool evaluate_upper(
const HostTensorVector& outputs)
const override;
101 AxisSet convert_mask_to_axis_set(
const std::vector<int64_t>& mask)
const;
103 std::vector<int64_t> m_begin_mask;
104 std::vector<int64_t> m_end_mask;
105 std::vector<int64_t> m_new_axis_mask;
106 std::vector<int64_t> m_shrink_axis_mask;
107 std::vector<int64_t> m_ellipsis_mask;
Visits the attributes of a node, primarily for serialization-like tasks.
Definition: attribute_visitor.hpp:59
A set of axes.
Definition: axis_set.hpp:19
A handle for one of a node's outputs.
Definition: node_output.hpp:33
Root of all actual ops.
Definition: op.hpp:17
Takes a slice of an input tensor, i.e., the sub-tensor that resides within a bounding box,...
Definition: strided_slice.hpp:23
StridedSlice(const Output< Node > &data, const Output< Node > &begin, const Output< Node > &end, const Output< Node > &strides, const std::vector< int64_t > &begin_mask, const std::vector< int64_t > &end_mask, const std::vector< int64_t > &new_axis_mask=std::vector< int64_t >{}, const std::vector< int64_t > &shrink_axis_mask=std::vector< int64_t >{}, const std::vector< int64_t > &ellipsis_mask=std::vector< int64_t >{})
Constructs a dynamic tensor strided slice operation.
StridedSlice(const Output< Node > &data, const Output< Node > &begin, const Output< Node > &end, const std::vector< int64_t > &begin_mask, const std::vector< int64_t > &end_mask, const std::vector< int64_t > &new_axis_mask=std::vector< int64_t >{}, const std::vector< int64_t > &shrink_axis_mask=std::vector< int64_t >{}, const std::vector< int64_t > &ellipsis_mask=std::vector< int64_t >{})
Constructs a dynamic tensor strided slice operation.
void validate_and_infer_types() override
Verifies that attributes and inputs are consistent and computes output shapes and element types....
bool has_evaluate() const override
Allows to get information about availability of evaluate method for the current operation.
size_t get_version() const override
Definition: strided_slice.hpp:93
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