00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef __LWPR_MATLAB_H
00023 #define __LWPR_MATLAB_H
00024
00025 #ifndef MATLAB
00026 #define MATLAB
00027 #endif
00028
00029 #include <mex.h>
00030 #include <lwpr.h>
00031 #include <lwpr_aux.h>
00032 #include <lwpr_mem.h>
00033
00034 #define RF_FIELDS 27
00035 #define SUB_FIELDS 2
00036 #define MODEL_FIELDS 25
00037
00038 extern const char *RF_FIELD_NAMES[RF_FIELDS];
00039 extern const char *SUB_FIELD_NAMES[SUB_FIELDS];
00040 extern const char *MODEL_FIELD_NAMES[MODEL_FIELDS];
00041
00042 double get_scalar_field(const mxArray *S,int num, const char *name);
00043 void set_scalar_field(mxArray *S,int num, int numField, double value);
00044
00045 void get_field(const mxArray *S,int num, const char *name,int m,int n, double *dest);
00046 void set_field(mxArray *S,int num, int numField, int m, int n, const double *src);
00047 void create_RF_from_matlab(LWPR_ReceptiveField *RF, const LWPR_Model *model, const mxArray *S, int num);
00048 void fill_matlab_from_RF(LWPR_ReceptiveField *RF, mxArray *S, int num);
00049 void model_consts_from_matlab(LWPR_Model *model, const mxArray *S);
00050
00051 void fill_matlab_from_sub(LWPR_SubModel *sub, mxArray *S, int dim);
00052 void create_sub_from_matlab(LWPR_SubModel *sub, const mxArray *S, int dim);
00053 void create_model_from_matlab(LWPR_Model *model, const mxArray *S);
00054 mxArray *create_matlab_from_model(LWPR_Model *model);
00055
00056 LWPR_Model *get_pointer_from_array(const mxArray *A);
00057 mxArray *create_array_from_pointer(LWPR_Model *model);
00058
00059 #endif