From e8f05da5fb919aa209e1bf0e5c70dd15fff84b7f Mon Sep 17 00:00:00 2001 From: thecha01 Date: Mon, 24 Aug 2020 17:21:41 +0100 Subject: Add ArgMinMax layer node to Graph API Change-Id: I2ccb2c65edd2932b76e905af3d747324b65c2f7f Signed-off-by: thecha01 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3910 Comments-Addressed: Arm Jenkins Reviewed-by: Michele Di Giorgio Tested-by: Arm Jenkins --- arm_compute/graph/backends/ValidateHelpers.h | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'arm_compute/graph/backends/ValidateHelpers.h') diff --git a/arm_compute/graph/backends/ValidateHelpers.h b/arm_compute/graph/backends/ValidateHelpers.h index fcebc5c418..23f6cc5627 100644 --- a/arm_compute/graph/backends/ValidateHelpers.h +++ b/arm_compute/graph/backends/ValidateHelpers.h @@ -52,6 +52,29 @@ inline arm_compute::ITensorInfo *get_backing_tensor_info(arm_compute::graph::Ten return ((tensor == nullptr) || (tensor->handle() == nullptr)) ? nullptr : tensor->handle()->tensor().info(); } +/** Validates a ArgMinMax layer node + * + * @tparam ArgMinMax layer function type + * + * @param[in] node Node to validate + * + * @return Status + */ +template +Status validate_arg_min_max_layer(ArgMinMaxLayerNode &node) +{ + ARM_COMPUTE_LOG_GRAPH_VERBOSE("Validating ArgMinMaxLayer node with ID : " << node.id() << " and Name: " << node.name() << std::endl); + ARM_COMPUTE_RETURN_ERROR_ON(node.num_inputs() != 1); + ARM_COMPUTE_RETURN_ERROR_ON(node.num_outputs() != 1); + + // Extract IO and info + arm_compute::ITensorInfo *input = detail::get_backing_tensor_info(node.input(0)); + arm_compute::ITensorInfo *output = get_backing_tensor_info(node.output(0)); + + // Validate function + return ArgMinMaxLayer::validate(input, node.axis(), output, node.reduction_operation()); +} + /** Validates a Bounding Box Transform layer node * * @tparam BoundingBoxTransformLayer Bounding Box Transform layer function type -- cgit v1.2.1