From 879e2ac0a540fa1b199e20d47830aa5eea484a4c Mon Sep 17 00:00:00 2001
From: cornet
Date: Wed, 22 Apr 2009 05:54:43 +0000
Subject: build with visual studio (dynamic libraries)

---
 src/matrixOperations/includes/spec.h | 24 ++++++++++++++++--------
 1 file changed, 16 insertions(+), 8 deletions(-)

(limited to 'src/matrixOperations/includes/spec.h')

diff --git a/src/matrixOperations/includes/spec.h b/src/matrixOperations/includes/spec.h
index ab12a6ba..b7b7d35c 100644
--- a/src/matrixOperations/includes/spec.h
+++ b/src/matrixOperations/includes/spec.h
@@ -14,9 +14,14 @@
 #ifndef __SPEC_H__
 #define __SPEC_H__
 
+#include "dynlib_matrixoperations.h"
 #include "doubleComplex.h"
 #include "floatComplex.h"
 
+#ifdef  __cplusplus
+extern "C" {
+#endif
+
 /* spec gives only the eigenvalues
    If you want the eigenvalues and the eigenvectors, use spec2 */
 
@@ -26,10 +31,10 @@
 #define cspecs(in) 	in
 #define zspecs(in) 	in
 
-void sspeca(float* in, int rows, float* out);
-void dspeca(double* in, int rows, double* out);
-void cspeca(floatComplex* in, int rows, floatComplex* out);
-void zspeca(doubleComplex* in, int rows,doubleComplex* out);
+EXTERN_MATOPS void sspeca(float* in, int rows, float* out);
+EXTERN_MATOPS void dspeca(double* in, int rows, double* out);
+EXTERN_MATOPS void cspeca(floatComplex* in, int rows, floatComplex* out);
+EXTERN_MATOPS void zspeca(doubleComplex* in, int rows,doubleComplex* out);
 
 
 
@@ -39,10 +44,13 @@ void zspeca(doubleComplex* in, int rows,doubleComplex* out);
 #define cspec2s(in,out)   	cspecs(FloatComplex(1,0));*out=FloatComplex(creals(in),cimags(in)); 
 #define zspec2s(in,out)  	zspecs(DoubleComplex(1,0));*out=DoubleComplex(zreals(in),zimags(in)); 
 
-void sspec2a(float* in, int rows, float* eigenvalues,float* eigenvectors);
-void dspec2a(double* in, int rows, double* eigenvalues,double* eigenvectors);
-void cspec2a(floatComplex* in, int rows, floatComplex* eigenvalues,floatComplex* eigenvectors);
-void zspec2a(doubleComplex* in, int rows,doubleComplex* eigenvalues,doubleComplex* eigenvectors);
+EXTERN_MATOPS void sspec2a(float* in, int rows, float* eigenvalues,float* eigenvectors);
+EXTERN_MATOPS void dspec2a(double* in, int rows, double* eigenvalues,double* eigenvectors);
+EXTERN_MATOPS void cspec2a(floatComplex* in, int rows, floatComplex* eigenvalues,floatComplex* eigenvectors);
+EXTERN_MATOPS void zspec2a(doubleComplex* in, int rows,doubleComplex* eigenvalues,doubleComplex* eigenvectors);
 
+#ifdef  __cplusplus
+} /* extern "C" */
+#endif
 
 #endif /* __SPEC_H__ */
-- 
cgit