summaryrefslogtreecommitdiff
path: root/newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.c
diff options
context:
space:
mode:
authorHarpreet2016-09-03 00:34:27 +0530
committerHarpreet2016-09-03 00:34:27 +0530
commit4b64cf486f5c999fd8167758cae27839f3b50848 (patch)
treed9d06639fb7fa61aef59be0363655e4747105ec7 /newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.c
parentd19794fb80a271a4c885ed90f97cfc12baa012f2 (diff)
downloadFOSSEE-Optim-toolbox-development-4b64cf486f5c999fd8167758cae27839f3b50848.tar.gz
FOSSEE-Optim-toolbox-development-4b64cf486f5c999fd8167758cae27839f3b50848.tar.bz2
FOSSEE-Optim-toolbox-development-4b64cf486f5c999fd8167758cae27839f3b50848.zip
Structure updated and intqpipopt files added
Diffstat (limited to 'newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.c')
-rw-r--r--newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.c40
1 files changed, 40 insertions, 0 deletions
diff --git a/newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.c b/newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.c
new file mode 100644
index 0000000..7090628
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.c
@@ -0,0 +1,40 @@
+#ifdef __cplusplus
+extern "C" {
+#endif
+#include <mex.h>
+#include <sci_gateway.h>
+#include <api_scilab.h>
+#include <MALLOC.h>
+static int direct_gateway(char *fname,void F(void)) { F();return 0;};
+extern Gatefunc cpp_intfminunc;
+extern Gatefunc cpp_intfminbnd;
+extern Gatefunc cpp_intfmincon;
+extern Gatefunc cpp_intqpipopt;
+extern Gatefunc matrix_cppintlinprog;
+extern Gatefunc mps_cppintlinprog;
+static GenericTable Tab[]={
+ {(Myinterfun)sci_gateway,cpp_intfminunc,"inter_fminunc"},
+ {(Myinterfun)sci_gateway,cpp_intfminbnd,"inter_fminbnd"},
+ {(Myinterfun)sci_gateway,cpp_intfmincon,"inter_fmincon"},
+ {(Myinterfun)sci_gateway,cpp_intqpipopt,"sci_intqpipopt"},
+ {(Myinterfun)sci_gateway,matrix_cppintlinprog,"sci_matrix_intlinprog"},
+ {(Myinterfun)sci_gateway,mps_cppintlinprog,"sci_mps_intlinprog"},
+};
+
+int C2F(libFOSSEE_Optimization_Toolbox)()
+{
+ Rhs = Max(0, Rhs);
+ if (*(Tab[Fin-1].f) != NULL)
+ {
+ if(pvApiCtx == NULL)
+ {
+ pvApiCtx = (StrCtx*)MALLOC(sizeof(StrCtx));
+ }
+ pvApiCtx->pstName = (char*)Tab[Fin-1].name;
+ (*(Tab[Fin-1].f))(Tab[Fin-1].name,Tab[Fin-1].F);
+ }
+ return 0;
+}
+#ifdef __cplusplus
+}
+#endif