diff options
Diffstat (limited to 'arm_compute/core/CL')
-rw-r--r-- | arm_compute/core/CL/CLTypes.h | 21 | ||||
-rw-r--r-- | arm_compute/core/CL/ICLTensor.h | 9 |
2 files changed, 28 insertions, 2 deletions
diff --git a/arm_compute/core/CL/CLTypes.h b/arm_compute/core/CL/CLTypes.h index 4a03cc9637..24ae542c7c 100644 --- a/arm_compute/core/CL/CLTypes.h +++ b/arm_compute/core/CL/CLTypes.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018 ARM Limited. + * Copyright (c) 2017-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -24,6 +24,7 @@ #ifndef __ARM_COMPUTE_CL_TYPES_H__ #define __ARM_COMPUTE_CL_TYPES_H__ +#include "arm_compute/core/CL/ICLArray.h" #include "arm_compute/core/GPUTarget.h" #include <string> @@ -53,5 +54,23 @@ struct CLDeviceOptions size_t num_cores; /**< Number of cores */ size_t cache_size; /**< Cache size */ }; + +/** OpenCL quantization data */ +struct CLQuantization +{ + /** Default Constructor */ + CLQuantization() + : scale(nullptr), offset(nullptr) {}; + /** Constructor + * + * @param[in] scale OpenCL scale array + * @param[in] offset OpenCL offset array + */ + CLQuantization(const ICLFloatArray *scale, const ICLInt32Array *offset) + : scale(scale), offset(offset) {}; + + const ICLFloatArray *scale; /**< Quantization scale array */ + const ICLInt32Array *offset; /**< Quantization offset array */ +}; } // namespace arm_compute #endif /* __ARM_COMPUTE_CL_TYPES_H__ */ diff --git a/arm_compute/core/CL/ICLTensor.h b/arm_compute/core/CL/ICLTensor.h index 0f5dba923b..094a0c3dec 100644 --- a/arm_compute/core/CL/ICLTensor.h +++ b/arm_compute/core/CL/ICLTensor.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016-2018 ARM Limited. + * Copyright (c) 2016-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -26,6 +26,8 @@ #include "arm_compute/core/ITensor.h" +#include "arm_compute/core/CL/CLTypes.h" + #include <cstdint> namespace cl @@ -53,6 +55,11 @@ public: /** Default virtual destructor. */ virtual ~ICLTensor() = default; + /** Interface to be implemented by the child class to return the wrapped quantization info data + * + * @return A wrapped quantization info object. + */ + virtual CLQuantization quantization() const = 0; /** Interface to be implemented by the child class to return a reference to the OpenCL buffer containing the image's data. * * @return A reference to an OpenCL buffer containing the image's data. |