diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/c/matrixOperations/includes/matrix.h | 3 | ||||
-rw-r--r-- | src/c/matrixOperations/interfaces/int_matrix.h | 13 | ||||
-rw-r--r-- | src/c/matrixOperations/matrix/u16matrixa.c | 33 |
3 files changed, 44 insertions, 5 deletions
diff --git a/src/c/matrixOperations/includes/matrix.h b/src/c/matrixOperations/includes/matrix.h index e47afa5..af9e09e 100644 --- a/src/c/matrixOperations/includes/matrix.h +++ b/src/c/matrixOperations/includes/matrix.h @@ -15,6 +15,7 @@ #define __MATRIX_H__ #include "types.h" +#include "uint16.h" #ifdef __cplusplus extern "C" { @@ -22,7 +23,7 @@ extern "C" { void dmatrixa(double* , int , int , int , int , double*); void smatrixa( float* , int , int , int , int , float*); - +void u16matrixa(uint16 *, int , int , int , int ,uint16 *out); #ifdef __cplusplus } /* extern "C" */ diff --git a/src/c/matrixOperations/interfaces/int_matrix.h b/src/c/matrixOperations/interfaces/int_matrix.h index 92d9ae1..e4a39da 100644 --- a/src/c/matrixOperations/interfaces/int_matrix.h +++ b/src/c/matrixOperations/interfaces/int_matrix.h @@ -20,13 +20,18 @@ extern "C" { #define d2d0d0matrixd2(in1, size, in2, in3, out ) dmatrixa(in1, size[0], size[1], in2, in3, out) #define d2s0s0matrixd2(in1, size, in2, in3, out ) dmatrixa(in1, size[0], size[1], in2, in3, out) -#define d2u160u160matrixd2(in1, size, in2, in3, out ) dmatrixa(in1, size[0], size[1], in2, in3, out) -#define d2u80u80matrixd2(in1, size, in2, in3, out ) dmatrixa(in1, size[0], size[1], in2, in3, out) +//#define d2u160u160matrixd2(in1, size, in2, in3, out ) dmatrixa(in1, size[0], size[1], in2, in3, out) +//#define d2u80u80matrixd2(in1, size, in2, in3, out ) dmatrixa(in1, size[0], size[1], in2, in3, out) #define s2d0d0matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) #define s2s0s0matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) -#define s2u160u160matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) -#define s2u80u80matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) +//#define s2u160u160matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) +//#define s2u80u80matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) + +#define u162d0d0matrixu162(in1, size, in2, in3, out ) u16matrixa(in1, size[0], size[1], in2, in3, out) +#define u162s0s0matrixu162(in1, size, in2, in3, out ) u16matrixa(in1, size[0], size[1], in2, in3, out) +//#define s2u160u160matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) +//#define s2u80u80matrixs2(in1, size, in2, in3, out ) smatrixa(in1, size[0], size[1], in2, in3, out) diff --git a/src/c/matrixOperations/matrix/u16matrixa.c b/src/c/matrixOperations/matrix/u16matrixa.c new file mode 100644 index 0000000..e60d880 --- /dev/null +++ b/src/c/matrixOperations/matrix/u16matrixa.c @@ -0,0 +1,33 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Abhinav Dronamraju + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +/*Function returns cumulative sum of members of array/matrix*/ + +#include "matrix.h" +#include "types.h" +#include "uint16.h" + +void u16matrixa(uint16 *in, int irow, int icolumn, int orow, int ocolumn ,uint16 *out) +{ + int i; + if(irow*icolumn==orow*ocolumn) + { + for(i=0;i<irow*icolumn ; i++) + { + out[i]=in[i]; + } + } + else + { + printf("The given dimensions are not valid for matrix reshaping"); + } +} |