aboutsummaryrefslogtreecommitdiff
path: root/arm_compute/runtime
diff options
context:
space:
mode:
Diffstat (limited to 'arm_compute/runtime')
-rw-r--r--arm_compute/runtime/CL/functions/CLThreshold.h22
-rw-r--r--arm_compute/runtime/NEON/functions/NEThreshold.h21
2 files changed, 33 insertions, 10 deletions
diff --git a/arm_compute/runtime/CL/functions/CLThreshold.h b/arm_compute/runtime/CL/functions/CLThreshold.h
index d8ae6fbb34..e0449a047d 100644
--- a/arm_compute/runtime/CL/functions/CLThreshold.h
+++ b/arm_compute/runtime/CL/functions/CLThreshold.h
@@ -24,6 +24,7 @@
#ifndef ARM_COMPUTE_CLTHRESHOLD_H
#define ARM_COMPUTE_CLTHRESHOLD_H
+#include "arm_compute/core/KernelDescriptors.h"
#include "arm_compute/core/Types.h"
#include "arm_compute/runtime/CL/ICLSimpleFunction.h"
@@ -31,6 +32,7 @@
namespace arm_compute
{
+// Forward declarations
class ICLTensor;
/** Basic function to run @ref CLThresholdKernel */
@@ -47,23 +49,25 @@ public:
* @param[in] type Thresholding type. Can either be BINARY or RANGE.
* @param[in] upper Upper threshold. Only used with RANGE thresholding
*/
+ ARM_COMPUTE_DEPRECATED_REL(20.08)
void configure(const ICLTensor *input, ICLTensor *output, uint8_t threshold,
uint8_t false_value = 0, uint8_t true_value = 0,
ThresholdType type = ThresholdType::BINARY, uint8_t upper = 0);
/** Initialise the function's source, destination, thresholds and threshold type
*
+ * @param[in] input First tensor input. Data types supported: U8.
+ * @param[out] output Output tensor. Data types supported: U8.
+ * @param[in] info Threshold descriptor
+ */
+ void configure(const ICLTensor *input, ICLTensor *output, const ThresholdKernelInfo &info);
+ /** Initialise the function's source, destination, thresholds and threshold type
+ *
* @param[in] compile_context The compile context to be used.
* @param[in] input First tensor input. Data types supported: U8.
* @param[out] output Output tensor. Data types supported: U8.
- * @param[in] threshold Threshold. If upper threshold is specified, this will be used as the lower threshold.
- * @param[in] false_value Value to assign when the condition is false.
- * @param[in] true_value value to assign when the condition is true.
- * @param[in] type Thresholding type. Can either be BINARY or RANGE.
- * @param[in] upper Upper threshold. Only used with RANGE thresholding
+ * @param[in] info Threshold descriptor
*/
- void configure(const CLCompileContext &compile_context, const ICLTensor *input, ICLTensor *output, uint8_t threshold,
- uint8_t false_value = 0, uint8_t true_value = 0,
- ThresholdType type = ThresholdType::BINARY, uint8_t upper = 0);
+ void configure(const CLCompileContext &compile_context, const ICLTensor *input, ICLTensor *output, const ThresholdKernelInfo &info);
};
-}
+} // namespace arm_compute
#endif /*ARM_COMPUTE_CLTHRESHOLD_H */
diff --git a/arm_compute/runtime/NEON/functions/NEThreshold.h b/arm_compute/runtime/NEON/functions/NEThreshold.h
index c955283e9e..e4f3ce34a4 100644
--- a/arm_compute/runtime/NEON/functions/NEThreshold.h
+++ b/arm_compute/runtime/NEON/functions/NEThreshold.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2019 ARM Limited.
+ * Copyright (c) 2016-2020 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -24,6 +24,7 @@
#ifndef ARM_COMPUTE_NETHRESHOLD_H
#define ARM_COMPUTE_NETHRESHOLD_H
+#include "arm_compute/core/KernelDescriptors.h"
#include "arm_compute/core/Types.h"
#include "arm_compute/runtime/NEON/INESimpleFunctionNoBorder.h"
@@ -31,6 +32,7 @@
namespace arm_compute
{
+// Forward declarations
class ITensor;
/** Basic function to run @ref NEThresholdKernel */
@@ -47,8 +49,25 @@ public:
* @param[in] type Thresholding type. Can either be BINARY or RANGE.
* @param[in] upper Upper threshold. Only used with RANGE thresholding
*/
+ ARM_COMPUTE_DEPRECATED_REL(20.08)
void configure(const ITensor *input, ITensor *output, uint8_t threshold, uint8_t false_value = 0, uint8_t true_value = 0,
ThresholdType type = ThresholdType::BINARY, uint8_t upper = 0);
+ /** Initialise the function's source, destination, thresholds and threshold type
+ *
+ * @param[in] input First tensor input. Data type supported: U8.
+ * @param[out] output Output tensor. Data type supported: U8.
+ * @param[in] info Threshold descriptor
+ */
+ void configure(const ITensor *input, ITensor *output, const ThresholdKernelInfo &info);
+ /** Static function to check if given info will lead to a valid configuration of @ref NEThreshold
+ *
+ * @param[in] input First tensor input. Data type supported: U8.
+ * @param[in] output Output tensor. Data type supported: U8.
+ * @param[in] info Threshold descriptor.
+ *
+ * @return A status, containing an error code in case of failure
+ */
+ static Status validate(const ITensorInfo *input, const ITensorInfo *output, const ThresholdKernelInfo &info);
};
} // namespace arm_compute
#endif /*ARM_COMPUTE_NETHRESHOLD_H */