namespace ShapeInferRange {
// global functions
template <class T>
bool get_data_as_double(
size_t idx,
const ov::Node \* op,
std::vector<double>& axes_value,
const std::map<size_t, std::shared_ptr<ngraph::runtime::HostTensor>>& constant_data = {}
);
bool get_data_as_double< ov::PartialShape >(
size_t idx,
const ov::Node \* op,
std::vector<double>& axes_value,
const std::map<size_t, std::shared_ptr<ngraph::runtime::HostTensor>>& constant_data
);
template <class T>
void range_shape_infer(
const Node \* op,
const std::vector<T>& input_shapes,
std::vector<T>& output_shapes,
bool output_is_integral,
bool step_allows_zero,
const std::map<size_t, std::shared_ptr<ngraph::runtime::HostTensor>>& constant_data
);
} // namespace ShapeInferRange