summaryrefslogtreecommitdiff
path: root/src/statisticsFunctions/includes
diff options
context:
space:
mode:
authorcornet2009-04-22 11:43:58 +0000
committercornet2009-04-22 11:43:58 +0000
commit0bb54c3bd1b4f41dc8336b53eaa2ca32126044e3 (patch)
tree65e00af6ae9d3d14f97478e193affb5bf3b72170 /src/statisticsFunctions/includes
parent088ab6f0fb18541245ef326f87d9150d54c6e1dc (diff)
downloadscilab2c-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.h26
-rw-r--r--src/statisticsFunctions/includes/mean.h33
-rw-r--r--src/statisticsFunctions/includes/prod.h33
-rw-r--r--src/statisticsFunctions/includes/statMax.h21
-rw-r--r--src/statisticsFunctions/includes/statMin.h22
-rw-r--r--src/statisticsFunctions/includes/sum.h34
-rw-r--r--src/statisticsFunctions/includes/variance.h40
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__ */