36 : _memory_group(memory_manager), _first_pass_func(memory_manager), _second_pass_func(memory_manager), _first_pass_tensor()
56 _memory_group.
manage(&_first_pass_tensor);
57 _first_pass_func.
configure(compile_context, input, &_first_pass_tensor, first_pass_config);
63 _second_pass_func.
configure(compile_context, &_first_pass_tensor, output, second_pass_config);
73 TensorInfo first_pass_tensor(input->
clone()->set_is_resizable(
true).reset_padding().set_num_channels(2));
78 first_pass_config.direction = config.
direction;
88 if((output !=
nullptr) && (output->
total_size() != 0))
101 _first_pass_func.
run();
102 _second_pass_func.
run();
unsigned int axis
Axis to run the FFT on.
FFTDirection direction
Direction of the FFT.
void configure(const ICLTensor *input, ICLTensor *output, const FFT2DInfo &config)
Initialise the function's source, destinations and border mode.
void configure(const ICLTensor *input, ICLTensor *output, const FFT1DInfo &config)
Initialise the function's source, destinations and border mode.
Descriptor used by the FFT1D function.
Descriptor used by the FFT2D function.
static Status validate(const ITensorInfo *input, const ITensorInfo *output, const FFT1DInfo &config)
Static function to check if given info will lead to a valid configuration of CLFFT1D.
#define ARM_COMPUTE_RETURN_ON_ERROR(status)
Checks if a status contains an error and returns it.
1 channel, 1 F32 per channel
void run() override
Run the kernels contained in the function.
static CLKernelLibrary & get()
Access the KernelLibrary singleton.
Store the tensor's metadata.
CLTensorAllocator * allocator()
Return a pointer to the tensor's allocator.
#define ARM_COMPUTE_ERROR_THROW_ON(status)
Copyright (c) 2017-2021 Arm Limited.
1 channel, 1 F16 per channel
#define ARM_COMPUTE_RETURN_ERROR_ON_NULLPTR(...)
void manage(IMemoryManageable *obj) override
Sets a object to be managed by the given memory group.
Interface to enqueue OpenCL kernels and get/set the OpenCL CommandQueue and ICLTuner.
~CLFFT2D()
Default destructor.
virtual std::unique_ptr< T > clone() const =0
Provide a clone of the current object of class T.
virtual ITensorInfo * info() const =0
Interface to be implemented by the child class to return the tensor's metadata.
CLFFT2D(std::shared_ptr< IMemoryManager > memory_manager=nullptr)
Default Constructor.
void allocate() override
Allocate size specified by TensorInfo of OpenCL memory.
Memory group resources scope handling class.
Interface for OpenCL tensor.
virtual size_t total_size() const =0
Returns the total size of the tensor in bytes.
#define ARM_COMPUTE_RETURN_ERROR_ON_MISMATCHING_SHAPES(...)
#define ARM_COMPUTE_RETURN_ERROR_ON_MISMATCHING_DATA_TYPES(...)
unsigned int axis1
Axis to run second pass on.
#define ARM_COMPUTE_ERROR_ON_NULLPTR(...)
Store the tensor's metadata.
FFTDirection direction
Direction of the FFT.
#define ARM_COMPUTE_RETURN_ERROR_ON_DATA_TYPE_NOT_IN(t,...)
void run() override
Run the kernels contained in the function.
unsigned int axis0
Axis to run first pass on.
static Status validate(const ITensorInfo *input, const ITensorInfo *output, const FFT2DInfo &config)
Static function to check if given info will lead to a valid configuration of CLFFT2D.