32 namespace experimental
36 int32_t begin_mask, int32_t end_mask, int32_t shrink_axis_mask)
38 auto k = std::make_unique<NEStridedSliceKernel>();
39 k->configure(input, output, starts, ends, strides, begin_mask, end_mask, shrink_axis_mask);
40 _kernel = std::move(k);
45 int32_t begin_mask, int32_t end_mask, int32_t shrink_axis_mask)
51 struct NEStridedSlice::Impl
55 std::unique_ptr<experimental::NEStridedSlice> op{
nullptr };
59 : _impl(
std::make_unique<Impl>())
68 int32_t begin_mask, int32_t end_mask, int32_t shrink_axis_mask)
72 _impl->op = std::make_unique<experimental::NEStridedSlice>();
73 _impl->op->configure(input->
info(), output->
info(), starts, ends, strides, begin_mask, end_mask, shrink_axis_mask);
86 int32_t begin_mask, int32_t end_mask, int32_t shrink_axis_mask)
static Status validate(const ITensorInfo *input, const ITensorInfo *output, const Coordinates &starts, const Coordinates &ends, const BiStrides &strides, int32_t begin_mask, int32_t end_mask, int32_t shrink_axis_mask)
Static function to check if given info will lead to a valid configuration of NEStridedSliceKernel.
void configure(const ITensor *input, ITensor *output, const Coordinates &starts, const Coordinates &ends, const BiStrides &strides, int32_t begin_mask=0, int32_t end_mask=0, int32_t shrink_axis_mask=0)
Configure kernel.
Store the tensor's metadata.
static Status validate(const ITensorInfo *input, const ITensorInfo *output, const Coordinates &starts, const Coordinates &ends, const BiStrides &strides, int32_t begin_mask=0, int32_t end_mask=0, int32_t shrink_axis_mask=0)
Static function to check if given info will lead to a valid configuration of NEStridedSlice.
Interface for Neon tensor.
SimpleTensor< float > src
Copyright (c) 2017-2021 Arm Limited.
static Status validate(const ITensorInfo *input, const ITensorInfo *output, const Coordinates &starts, const Coordinates &ends, const BiStrides &strides, int32_t begin_mask=0, int32_t end_mask=0, int32_t shrink_axis_mask=0)
Static function to check if given info will lead to a valid configuration of NEStridedSlice.
NEStridedSlice()
Default Constructor.
Basic function to run NEStridedSliceKernel.
virtual ITensorInfo * info() const =0
Interface to be implemented by the child class to return the tensor's metadata.
void configure(const ITensorInfo *input, ITensorInfo *output, const Coordinates &starts, const Coordinates &ends, const BiStrides &strides, int32_t begin_mask=0, int32_t end_mask=0, int32_t shrink_axis_mask=0)
Configure kernel.
NEStridedSlice & operator=(const NEStridedSlice &)=delete
Prevent instances of this class from being copied (As this class contains pointers) ...
void run() override
Run the kernels contained in the function.
~NEStridedSlice()
Default Destructor.
void add_tensor(int id, ITensor *tensor)
Add tensor to the pack.