blob: 3782c4e8c949290b4e1e9b0ead8808e06b35bb8d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#ifndef __SQUARED_DIFFERENCE_OPERATION_H__
#define __SQUARED_DIFFERENCE_OPERATION_H__
#include <arm_compute/runtime/Tensor.h>
#include <arm_compute/runtime/CL/CLTensor.h>
#include <arm_compute/runtime/CL/functions/CLArithmeticSubtraction.h>
#include <arm_compute/runtime/CL/functions/CLPixelWiseMultiplication.h>
#include <arm_compute/runtime/NEON/functions/NEArithmeticSubtraction.h>
#include <arm_compute/runtime/NEON/functions/NEPixelWiseMultiplication.h>
class SquaredDifferenceOperation : public ::arm_compute::IFunction
{
public:
void configure(::arm_compute::ITensor *input1, ::arm_compute::ITensor *input2,
::arm_compute::ITensor *output, ::arm_compute::ConvertPolicy ConvertPolicy,
float scale, ::arm_compute::RoundingPolicy RoundingPolicy);
public:
void run(void) override;
private:
::arm_compute::ITensor *_input1;
::arm_compute::ITensor *_input2;
::arm_compute::ITensor *_output;
private:
::arm_compute::CLArithmeticSubtraction _cl_sub;
::arm_compute::CLPixelWiseMultiplication _cl_mul;
::arm_compute::NEArithmeticSubtraction _neon_sub;
::arm_compute::NEPixelWiseMultiplication _neon_mul;
};
#endif // __SQUARED_DIFFERENCE_OPERATION_H__
|