summaryrefslogtreecommitdiff
path: root/src/statisticsFunctions/includes/prod.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/statisticsFunctions/includes/prod.h')
-rw-r--r--src/statisticsFunctions/includes/prod.h91
1 files changed, 91 insertions, 0 deletions
diff --git a/src/statisticsFunctions/includes/prod.h b/src/statisticsFunctions/includes/prod.h
new file mode 100644
index 00000000..b0410ae9
--- /dev/null
+++ b/src/statisticsFunctions/includes/prod.h
@@ -0,0 +1,91 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET
+ *
+ * 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 __PROD_H__
+#define __PROD_H__
+
+#include "floatComplex.h"
+#include "doubleComplex.h"
+
+/*
+** \brief Sum of a scalar element, just returns it
+*/
+#define sprods(in) in
+#define srowprods(in) in
+#define scolumnsprods(in) in
+#define smatlabprods(in) in
+
+/*
+** \brief Sum of a scalar element, just returns it
+*/
+#define dprods(in) in
+#define drowprods(in) in
+#define dcolumnsprods(in) in
+#define dmatlabprods(in) in
+
+/*
+** \brief Sum of a scalar element, just returns it
+*/
+#define cprods(in) in
+#define crowprods(in) in
+#define ccolumnsprods(in) in
+#define cmatlabprods(in) in
+
+/*
+** \brief Sum of a scalar element, just returns it
+*/
+#define zprods(in) in
+#define zrowprods(in) in
+#define zcolumnsprods(in) in
+#define zmatlabprods(in) in
+
+/*
+** \brief Sum of a float array
+** \param in the float array to process
+** \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);
+
+/*
+** \brief Sum of a double array
+** \param in the double array to process
+** \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);
+
+/*
+** \brief Sum of a float complex array
+** \param in the float array to process
+** \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);
+
+/*
+** \brief Sum of a double complex array
+** \param in the double array to process
+** \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);
+
+#endif /* !__PROD_H__ */