diff options
Diffstat (limited to 'libs/ARMComputeEx/arm_compute/runtime/CL/functions/CLArgMinMax.h')
-rw-r--r-- | libs/ARMComputeEx/arm_compute/runtime/CL/functions/CLArgMinMax.h | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/libs/ARMComputeEx/arm_compute/runtime/CL/functions/CLArgMinMax.h b/libs/ARMComputeEx/arm_compute/runtime/CL/functions/CLArgMinMax.h deleted file mode 100644 index 8044c58af..000000000 --- a/libs/ARMComputeEx/arm_compute/runtime/CL/functions/CLArgMinMax.h +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Copyright (c) 2018 Samsung Electronics Co., Ltd. All Rights Reserved - * Copyright (c) 2017 ARM Limited. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * @file CLArgMinMax.h - * @ingroup COM_AI_RUNTIME - * @brief This file contains arm_compute::CLArgMinMax class - */ - -#ifndef __ARM_COMPUTE_CLARG_MIN_MAX_H__ -#define __ARM_COMPUTE_CLARG_MIN_MAX_H__ - -#include "arm_compute/core/CL/kernels/CLArgMinMaxKernel.h" -#include "arm_compute/runtime/CL/CLTensor.h" -#include "arm_compute/runtime/IFunction.h" -#include "arm_compute/core/TypesEx.h" - -namespace arm_compute -{ -class ICLTensor; - -/** - * @brief Class to execute CLArgMinMax operation - */ -class CLArgMinMax : public IFunction -{ -public: - /** - * @brief Construct a new CLArgMinMax object - */ - CLArgMinMax(); - - /** - * @brief Prevent instances of this class from being copied (As this class contains pointers) - */ - CLArgMinMax(const CLArgMinMax &) = delete; - - /** - * @brief Prevent instances of this class from being copied (As this class contains pointers) - */ - CLArgMinMax &operator=(const CLArgMinMax &) = delete; - - /** - * @brief Construct a new CLArgMinMax object by using copy constructor - * @param[in] CLArgMinMax object to move - */ - CLArgMinMax(CLArgMinMax &&) = default; - - /** - * @brief Assign a CLArgMinMax object. - * @param[in] CLArgMinMax object to assign. This object will be moved. - */ - CLArgMinMax &operator=(CLArgMinMax &&) = default; - - /** - * @brief Initialise the kernel's inputs and outputs. - * @param[in] input Input tensor. Data types supported: U8/QASYMM8/S32/F32. - * @param[out] output The result of argminmaxMax operation. Data types supported: same as @p - * input. - * @param[in] axis Axis to argminmax. It must be sorted and no duplicates. - * @param[in] is_min True for ArgMin operation. - * @param[in] is_max Ture for ArgMax operation. - * @return N/A - */ - void configure(ICLTensor *input, ICLTensor *output, std::vector<uint32_t> argminmax_axis, - ArgOperation op); - - /** - * @brief Static function to check if given info will lead to a valid configuration - * @param[in] input Input tensor. Data types supported: U8/QASYMM8/S32/F32. - * @param[in] axis Axis to argminmax - * @param[out] output The result of argminmaxMax operation. Data types supported: same as @p - * input. - * @return a status - */ - static Status validate(const ITensorInfo *input, const std::vector<uint32_t> &argminmax_axis, - const ITensorInfo *output, ArgOperation op); - - /** - * @brief Run the kernels contained in the function - * This operation works on CPU on GPU depending on the value of argminmax_MAX_RUN_ON_CPU macro - * in CLArgMinMax.cpp. - * If argminmax_MAX_RUN_ON_CPU == 1, CPU runs this operation. - * Otherwise GPU runs this operation. - * @return N/A - */ - void run() override; - -private: - ICLTensor *_input; - ICLTensor *_output; - std::vector<uint32_t> _argminmax_axis; - ArgOperation _arg_op; - - std::unique_ptr<CLTensor[]> _interm_tensors{nullptr}; - std::unique_ptr<CLArgMinMaxKernel[]> _argminmax_kernels{nullptr}; - size_t _num_of_kernels; -}; -} -#endif /*__ARM_COMPUTE_CLargminmax_MAX_H__ */ |