Element-wise multiply

Multiply: dst[i] = scale * src1[i] * src2[i]

Parameters:

src1_data  
src1_step first source image data and step
src2_data  
src2_step second source image data and step
dst_data  
dst_step destination image data and step
width  
height dimensions of the images
scale additional multiplier
// global functions

int
hal_ni_mul16s(
    const short* src1_data,
    size_t src1_step,
    const short* src2_data,
    size_t src2_step,
    short* dst_data,
    size_t dst_step,
    int width,
    int height,
    double scale
    );

int
hal_ni_mul16u(
    const ushort* src1_data,
    size_t src1_step,
    const ushort* src2_data,
    size_t src2_step,
    ushort* dst_data,
    size_t dst_step,
    int width,
    int height,
    double scale
    );

int
hal_ni_mul32f(
    const float* src1_data,
    size_t src1_step,
    const float* src2_data,
    size_t src2_step,
    float* dst_data,
    size_t dst_step,
    int width,
    int height,
    double scale
    );

int
hal_ni_mul32s(
    const int* src1_data,
    size_t src1_step,
    const int* src2_data,
    size_t src2_step,
    int* dst_data,
    size_t dst_step,
    int width,
    int height,
    double scale
    );

int
hal_ni_mul64f(
    const double* src1_data,
    size_t src1_step,
    const double* src2_data,
    size_t src2_step,
    double* dst_data,
    size_t dst_step,
    int width,
    int height,
    double scale
    );

int
hal_ni_mul8s(
    const schar* src1_data,
    size_t src1_step,
    const schar* src2_data,
    size_t src2_step,
    schar* dst_data,
    size_t dst_step,
    int width,
    int height,
    double scale
    );

int
hal_ni_mul8u(
    const uchar* src1_data,
    size_t src1_step,
    const uchar* src2_data,
    size_t src2_step,
    uchar* dst_data,
    size_t dst_step,
    int width,
    int height,
    double scale
    );