diff options
author | cornet | 2009-04-22 11:43:58 +0000 |
---|---|---|
committer | cornet | 2009-04-22 11:43:58 +0000 |
commit | 0bb54c3bd1b4f41dc8336b53eaa2ca32126044e3 (patch) | |
tree | 65e00af6ae9d3d14f97478e193affb5bf3b72170 /src/statisticsFunctions/includes | |
parent | 088ab6f0fb18541245ef326f87d9150d54c6e1dc (diff) | |
download | scilab2c-0bb54c3bd1b4f41dc8336b53eaa2ca32126044e3.tar.gz scilab2c-0bb54c3bd1b4f41dc8336b53eaa2ca32126044e3.tar.bz2 scilab2c-0bb54c3bd1b4f41dc8336b53eaa2ca32126044e3.zip |
add statisticsFunctions project
Diffstat (limited to 'src/statisticsFunctions/includes')
-rw-r--r-- | src/statisticsFunctions/includes/dynlib_statisticsfunctions.h | 26 | ||||
-rw-r--r-- | src/statisticsFunctions/includes/mean.h | 33 | ||||
-rw-r--r-- | src/statisticsFunctions/includes/prod.h | 33 | ||||
-rw-r--r-- | src/statisticsFunctions/includes/statMax.h | 21 | ||||
-rw-r--r-- | src/statisticsFunctions/includes/statMin.h | 22 | ||||
-rw-r--r-- | src/statisticsFunctions/includes/sum.h | 34 | ||||
-rw-r--r-- | src/statisticsFunctions/includes/variance.h | 40 |
7 files changed, 145 insertions, 64 deletions
diff --git a/src/statisticsFunctions/includes/dynlib_statisticsfunctions.h b/src/statisticsFunctions/includes/dynlib_statisticsfunctions.h new file mode 100644 index 00000000..e9e71405 --- /dev/null +++ b/src/statisticsFunctions/includes/dynlib_statisticsfunctions.h @@ -0,0 +1,26 @@ +/*
+* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+* Copyright (C) 2009 - DIGITEO - Allan CORNET
+*
+* 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
+*
+*/
+
+#ifndef __DYNLIB_STATISTICSFUNCTIONS_H__
+#define __DYNLIB_STATISTICSFUNCTIONS_H__
+
+#ifdef _MSC_VER
+ #if STATISTICSFUNCTIONS_EXPORTS
+ #define EXTERN_STATFUNC __declspec (dllexport)
+ #else
+ #define EXTERN_STATFUNC __declspec (dllimport)
+ #endif
+#else
+ #define EXTERN_STATFUNC
+#endif
+
+#endif /* __DYNLIB_STATISTICSFUNCTIONS_H__ */
\ No newline at end of file diff --git a/src/statisticsFunctions/includes/mean.h b/src/statisticsFunctions/includes/mean.h index 049fc522..d87c4ca5 100644 --- a/src/statisticsFunctions/includes/mean.h +++ b/src/statisticsFunctions/includes/mean.h @@ -13,9 +13,13 @@ #ifndef __MEAN_H__ #define __MEAN_H__ +#include "dynlib_statisticsfunctions.h" #include "division.h" #include "addition.h" +#ifdef __cplusplus +extern "C" { +#endif /* ** \brief Mean of a scalar element, just returns it */ @@ -54,9 +58,9 @@ ** \param size, the size of the array ** \returns the mean. */ -float smeana(float *in, int size); -void srowmeana(float *in, int lines, int columns, float* out); -void scolumnmeana(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC float smeana(float *in, int size); +EXTERN_STATFUNC void srowmeana(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnmeana(float *in, int lines, int columns, float* out); /* ** \brief Mean of a double array @@ -64,9 +68,9 @@ void scolumnmeana(float *in, int lines, int columns, float* out); ** \param size, the size of the array ** \returns the mean. */ -double dmeana(double *in, int size); -void drowmeana(double *in, int lines, int columns, double* out); -void dcolumnmeana(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC double dmeana(double *in, int size); +EXTERN_STATFUNC void drowmeana(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnmeana(double *in, int lines, int columns, double* out); /* ** \brief Mean of a float complex array @@ -74,9 +78,9 @@ void dcolumnmeana(double *in, int lines, int columns, double* out); ** \param size, the size of the array ** \returns the mean. */ -floatComplex cmeana(floatComplex *in, int size); -void crowmeana(floatComplex *in, int lines, int columns, floatComplex* out); -void ccolumnmeana(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC floatComplex cmeana(floatComplex *in, int size); +EXTERN_STATFUNC void crowmeana(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC void ccolumnmeana(floatComplex *in, int lines, int columns, floatComplex* out); /* ** \brief Mean of a double complex array @@ -84,7 +88,12 @@ void ccolumnmeana(floatComplex *in, int lines, int columns, floatComplex* out); ** \param size, the size of the array ** \returns the mean. */ -doubleComplex zmeana(doubleComplex *in, int size); -void zrowmeana(doubleComplex *in, int lines, int columns, doubleComplex* out); -void zcolumnmeana(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC doubleComplex zmeana(doubleComplex *in, int size); +EXTERN_STATFUNC void zrowmeana(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC void zcolumnmeana(doubleComplex *in, int lines, int columns, doubleComplex* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + #endif /* !__MEAN_H__ */ diff --git a/src/statisticsFunctions/includes/prod.h b/src/statisticsFunctions/includes/prod.h index 425dd970..a5fde84c 100644 --- a/src/statisticsFunctions/includes/prod.h +++ b/src/statisticsFunctions/includes/prod.h @@ -13,9 +13,13 @@ #ifndef __PROD_H__ #define __PROD_H__ +#include "dynlib_statisticsfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" +#ifdef __cplusplus +extern "C" { +#endif /* ** \brief Sum of a scalar element, just returns it */ @@ -54,9 +58,9 @@ ** \param size, the size of the array ** \returns the prod. */ -float sproda(float *in, int size); -void srowproda(float *in, int lines, int columns, float* out); -void scolumnproda(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC float sproda(float *in, int size); +EXTERN_STATFUNC void srowproda(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnproda(float *in, int lines, int columns, float* out); /* ** \brief Sum of a double array @@ -64,9 +68,9 @@ void scolumnproda(float *in, int lines, int columns, float* out); ** \param size, the size of the array ** \returns the prod. */ -double dproda(double *in, int size); -void drowproda(double *in, int lines, int columns, double* out); -void dcolumnproda(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC double dproda(double *in, int size); +EXTERN_STATFUNC void drowproda(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnproda(double *in, int lines, int columns, double* out); /* ** \brief Sum of a float complex array @@ -74,9 +78,9 @@ void dcolumnproda(double *in, int lines, int columns, double* out); ** \param size, the size of the array ** \returns the prod. */ -floatComplex cproda(floatComplex *in, int size); -void crowproda(floatComplex *in, int lines, int columns, floatComplex* out); -void ccolumnproda(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC floatComplex cproda(floatComplex *in, int size); +EXTERN_STATFUNC void crowproda(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC void ccolumnproda(floatComplex *in, int lines, int columns, floatComplex* out); /* ** \brief Sum of a double complex array @@ -84,8 +88,13 @@ void ccolumnproda(floatComplex *in, int lines, int columns, floatComplex* out); ** \param size, the size of the array ** \returns the prod. */ -doubleComplex zproda(doubleComplex *in, int size); -void zrowproda(doubleComplex *in, int lines, int columns, doubleComplex* out); -void zcolumnproda(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC doubleComplex zproda(doubleComplex *in, int size); +EXTERN_STATFUNC void zrowproda(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC void zcolumnproda(doubleComplex *in, int lines, int columns, doubleComplex* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + #endif /* !__PROD_H__ */ diff --git a/src/statisticsFunctions/includes/statMax.h b/src/statisticsFunctions/includes/statMax.h index 91d21f12..3538bc1a 100644 --- a/src/statisticsFunctions/includes/statMax.h +++ b/src/statisticsFunctions/includes/statMax.h @@ -13,6 +13,11 @@ #ifndef __STAT_MAX_H__ #define __STAT_MAX_H__ +#include "dynlib_statisticsfunctions.h" + +#ifdef __cplusplus +extern "C" { +#endif /* ** \brief Sum of a scalar element, just returns it @@ -36,9 +41,9 @@ ** \param size, the size of the array ** \returns the max. */ -float smaxa(float *in, int size); -void srowmaxa(float *in, int lines, int columns, float* out); -void scolumnmaxa(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC float smaxa(float *in, int size); +EXTERN_STATFUNC void srowmaxa(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnmaxa(float *in, int lines, int columns, float* out); /* ** \brief Sum of a double array @@ -46,9 +51,13 @@ void scolumnmaxa(float *in, int lines, int columns, float* out); ** \param size, the size of the array ** \returns the max. */ -double dmaxa(double *in, int size); -void drowmaxa(double *in, int lines, int columns, double* out); -void dcolumnmaxa(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC double dmaxa(double *in, int size); +EXTERN_STATFUNC void drowmaxa(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnmaxa(double *in, int lines, int columns, double* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif #endif /* !__STAT_MAX_H__ */ diff --git a/src/statisticsFunctions/includes/statMin.h b/src/statisticsFunctions/includes/statMin.h index 2b21c74a..9528d9f4 100644 --- a/src/statisticsFunctions/includes/statMin.h +++ b/src/statisticsFunctions/includes/statMin.h @@ -13,6 +13,11 @@ #ifndef __STAT_MIN_H__ #define __STAT_MIN_H__ +#include "dynlib_statisticsfunctions.h" + +#ifdef __cplusplus +extern "C" { +#endif /* ** \brief Sum of a scalar element, just returns it @@ -36,9 +41,9 @@ ** \param size, the size of the array ** \returns the min. */ -float smina(float *in, int size); -void srowmina(float *in, int lines, int columns, float* out); -void scolumnmina(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC float smina(float *in, int size); +EXTERN_STATFUNC void srowmina(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnmina(float *in, int lines, int columns, float* out); /* ** \brief Sum of a double array @@ -46,8 +51,13 @@ void scolumnmina(float *in, int lines, int columns, float* out); ** \param size, the size of the array ** \returns the min. */ -double dmina(double *in, int size); -void drowmina(double *in, int lines, int columns, double* out); -void dcolumnmina(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC double dmina(double *in, int size); +EXTERN_STATFUNC void drowmina(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnmina(double *in, int lines, int columns, double* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + #endif /* !__STAT_MIN_H__ */ diff --git a/src/statisticsFunctions/includes/sum.h b/src/statisticsFunctions/includes/sum.h index 0e5876a3..2910792e 100644 --- a/src/statisticsFunctions/includes/sum.h +++ b/src/statisticsFunctions/includes/sum.h @@ -13,10 +13,15 @@ #ifndef __SUM_H__ #define __SUM_H__ +#include "dynlib_statisticsfunctions.h" #include "floatComplex.h" #include "doubleComplex.h" #include "addition.h" +#ifdef __cplusplus +extern "C" { +#endif + /* ** \brief Sum of a scalar element, just returns it */ @@ -55,9 +60,9 @@ ** \param size, the size of the array ** \returns the sum. */ -float ssuma(float *in, int size); -void srowsuma(float *in, int lines, int columns, float* out); -void scolumnsuma(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC float ssuma(float *in, int size); +EXTERN_STATFUNC void srowsuma(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnsuma(float *in, int lines, int columns, float* out); /* ** \brief Sum of a double array @@ -65,9 +70,9 @@ void scolumnsuma(float *in, int lines, int columns, float* out); ** \param size, the size of the array ** \returns the sum. */ -double dsuma(double *in, int size); -void drowsuma(double *in, int lines, int columns, double* out); -void dcolumnsuma(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC double dsuma(double *in, int size); +EXTERN_STATFUNC void drowsuma(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnsuma(double *in, int lines, int columns, double* out); /* ** \brief Sum of a float complex array @@ -75,9 +80,9 @@ void dcolumnsuma(double *in, int lines, int columns, double* out); ** \param size, the size of the array ** \returns the sum. */ -floatComplex csuma(floatComplex *in, int size); -void crowsuma(floatComplex *in, int lines, int columns, floatComplex* out); -void ccolumnsuma(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC floatComplex csuma(floatComplex *in, int size); +EXTERN_STATFUNC void crowsuma(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC void ccolumnsuma(floatComplex *in, int lines, int columns, floatComplex* out); /* ** \brief Sum of a double complex array @@ -85,8 +90,13 @@ void ccolumnsuma(floatComplex *in, int lines, int columns, floatComplex* out); ** \param size, the size of the array ** \returns the sum. */ -doubleComplex zsuma(doubleComplex *in, int size); -void zrowsuma(doubleComplex *in, int lines, int columns, doubleComplex* out); -void zcolumnsuma(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC doubleComplex zsuma(doubleComplex *in, int size); +EXTERN_STATFUNC void zrowsuma(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC void zcolumnsuma(doubleComplex *in, int lines, int columns, doubleComplex* out); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif #endif /* !__SUM_H__ */ diff --git a/src/statisticsFunctions/includes/variance.h b/src/statisticsFunctions/includes/variance.h index be984236..a058bb75 100644 --- a/src/statisticsFunctions/includes/variance.h +++ b/src/statisticsFunctions/includes/variance.h @@ -13,6 +13,12 @@ #ifndef __VARIANCE_H__ #define __VARIANCE_H__ +#include <stdio.h> +#include <stdlib.h> +#include <math.h> + + +#include "dynlib_statisticsfunctions.h" #include "subtraction.h" #include "division.h" @@ -22,11 +28,10 @@ #include "mean.h" #include "matrixTranspose.h" -#include <stdio.h> -#include <stdlib.h> -#include <math.h> - +#ifdef __cplusplus +extern "C" { +#endif @@ -70,9 +75,9 @@ ** \param size, the size of the array ** \returns the variance. */ -float svariancea(float *in, int size); -void srowvariancea(float *in, int lines, int columns, float* out); -void scolumnvariancea(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC float svariancea(float *in, int size); +EXTERN_STATFUNC void srowvariancea(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnvariancea(float *in, int lines, int columns, float* out); /* ** \brief Variance of a double array @@ -80,9 +85,9 @@ void scolumnvariancea(float *in, int lines, int columns, float* out); ** \param size, the size of the array ** \returns the variance. */ -double dvariancea(double *in, int size); -void drowvariancea(double *in, int lines, int columns, double* out); -void dcolumnvariancea(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC double dvariancea(double *in, int size); +EXTERN_STATFUNC void drowvariancea(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnvariancea(double *in, int lines, int columns, double* out); /* ** \brief Variance of a float complex array @@ -90,9 +95,9 @@ void dcolumnvariancea(double *in, int lines, int columns, double* out); ** \param size, the size of the array ** \returns the variance. */ -floatComplex cvariancea(floatComplex *in, int size); -void crowvariancea(floatComplex *in, int lines, int columns, floatComplex* out); -void ccolumnvariancea(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC floatComplex cvariancea(floatComplex *in, int size); +EXTERN_STATFUNC void crowvariancea(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC void ccolumnvariancea(floatComplex *in, int lines, int columns, floatComplex* out); /* ** \brief Variance of a double complex array @@ -100,10 +105,13 @@ void ccolumnvariancea(floatComplex *in, int lines, int columns, floatComplex* o ** \param size, the size of the array ** \returns the variance. */ -doubleComplex zvariancea(doubleComplex *in, int size); -void zrowvariancea(doubleComplex *in, int lines, int columns, doubleComplex* out); -void zcolumnvariancea(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC doubleComplex zvariancea(doubleComplex *in, int size); +EXTERN_STATFUNC void zrowvariancea(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC void zcolumnvariancea(doubleComplex *in, int lines, int columns, doubleComplex* out); +#ifdef __cplusplus +} /* extern "C" */ +#endif #endif /* !__VARIANCE_H__ */ |