COMPMID-3392: Collapse TensorMaps into a single TensorPack

Collapse InputTensorMap and OutputTensorMap to a single TensorPack
mechanism.

Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com>
Change-Id: Ie2fdfc6b07d84ad589169ec99ca64fcf45a00bec
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/c/VisualCompute/ComputeLibrary/+/253783
Tested-by: bsgcomp <bsgcomp@arm.com>
Reviewed-by: Michalis Spyrou <michalis.spyrou@arm.com>
Signed-off-by: Michalis Spyrou <michalis.spyrou@arm.com>
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3641
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: SiCong Li <sicong.li@arm.com>
Reviewed-by: Sheri Zhang <sheri.zhang@arm.com>
diff --git a/arm_compute/runtime/IOperator.h b/arm_compute/runtime/IOperator.h
index d72fca4..e7952bb 100644
--- a/arm_compute/runtime/IOperator.h
+++ b/arm_compute/runtime/IOperator.h
@@ -40,13 +40,10 @@
     virtual ~IOperator() = default;
     /** Run the kernels contained in the function
      *
-     *
-     * @param[in] inputs    Vector that contains the input tensors.
-     * @param[in] outputs   Vector that contains the output tensors.
-     * @param[in] workspace Vector that contains the workspace tensors.
+     * @param[in] tensors Vector that contains the tensors to operate on.
      *
      */
-    virtual void run(InputTensorMap inputs, OutputTensorMap outputs, OperatorTensorMap workspace) = 0;
+    virtual void run(ITensorPack &tensors) = 0;
     /** Prepare the function for executing
      *
      * Any one off pre-processing step required by the function is handled here
@@ -55,7 +52,7 @@
      *
      * @note Prepare stage might not need all the function's buffers' backing memory to be available in order to execute
      */
-    virtual void prepare(OperatorTensorMap constants) = 0;
+    virtual void prepare(ITensorPack &constants) = 0;
 
     /** Return the memory requirements required by the workspace
      */