Ice Sheet System Model  4.18
Code documentation
matlabio.h
Go to the documentation of this file.
1 /*\file matlabio.h
2  *\brief: I/O for ISSM in matlab mode
3  */
4 
5 #ifndef _MATLAB_IO_H_
6 #define _MATLAB_IO_H_
7 
8 #ifdef HAVE_CONFIG_H
9 #include <config.h>
10 #else
11 #error "Cannot compile with HAVE_CONFIG_H symbol! run configure first!"
12 #endif
13 
14 #include "../include/matlabincludes.h"
15 #include "../../../c/bamg/bamgobjects.h"
16 #include "../../../c/classes/classes.h"
17 #include "../../../c/toolkits/toolkits.h"
18 #include "../../../c/shared/shared.h"
19 
20 void WriteData(mxArray** pdataref,IssmDenseMat<double>* matrix);
21 void WriteData(mxArray** pdataref,double* matrix, int M,int N);
22 void WriteData(mxArray** pdataref,int* matrix, int M,int N);
23 void WriteData(mxArray** pdataref,IssmSeqVec<double>* vector);
24 void WriteData(mxArray** pdataref,double* vector, int M);
25 void WriteData(mxArray** pdataref,short* vector, int M);
26 void WriteData(mxArray** pdataref,int* vector, int M);
27 void WriteData(mxArray** pdataref,int integer);
28 void WriteData(mxArray** pdataref,bool boolean);
29 void WriteData(mxArray** pdataref,double scalar);
30 void WriteData(mxArray** pdataref,const char* string);
31 void WriteData(mxArray** pdataref);
32 void WriteData(mxArray** pdataref,BamgGeom* bamggeom);
33 void WriteData(mxArray** pdataref,BamgMesh* bamgmesh);
34 void WriteData(mxArray** pdataref,RiftStruct* riftstruct);
35 void WriteData(mxArray** pdataref,Contours* contours);
36 
37 void FetchData(double** pmatrix,int* pM,int *pN,const mxArray* dataref);
38 void FetchData(int** pmatrix,int* pM,int *pN,const mxArray* dataref);
39 void FetchData(bool** pmatrix,int* pM,int *pN,const mxArray* dataref);
40 void FetchData(int** pvector,int* pM,const mxArray* dataref);
41 void FetchData(float** pvector,int* pM,const mxArray* dataref);
42 void FetchData(double** pvector,int* pM,const mxArray* dataref);
43 void FetchData(bool** pvector,int* pM,const mxArray* dataref);
44 void FetchData(char** pstring,const mxArray* dataref);
45 void FetchData(double* pscalar,const mxArray* dataref);
46 void FetchData(int* pinteger,const mxArray* dataref);
47 void FetchData(bool* pbool,const mxArray* dataref);
48 void FetchData(BamgGeom** bamggeom,const mxArray* dataref);
49 void FetchData(BamgMesh** bamgmesh,const mxArray* dataref);
50 void FetchData(BamgOpts** bamgopts,const mxArray* dataref);
51 void FetchData(Options** poptions,int istart, int nrhs,const mxArray** pdataref);
52 void FetchData(Contours** pcontours,const mxArray* dataref);
53 void FetchChacoData(int* pnvtxs,int** padjacency,int** pstart,float** pewgts,const mxArray* A_IN, const mxArray* EWGTS_IN);
54 
55 Option* OptionParse(char* name, const mxArray* prhs[]);
56 GenericOption<double>* OptionDoubleParse(char* name, const mxArray* prhs[]);
57 GenericOption<double*>* OptionDoubleArrayParse(char* name, const mxArray* prhs[]);
58 GenericOption<char*>* OptionCharParse(char* name, const mxArray* prhs[]);
59 
60 mxArray* mxGetAssignedField(const mxArray* pmxa_array,int number, const char* field);
61 void SetStructureField(mxArray* dataref,const char* fieldname,int fieldrows,int fieldcols,double* fieldpointer);
62 void SetStructureFieldi(mxArray* dataref,int i,const char* fieldname,int fieldrows,int fieldcols,double* fieldpointer);
63 void SetStructureFieldi(mxArray* dataref,int i,const char* fieldname,int fieldrows,int fieldcols,int* fieldpointer);
64 void SetStructureFieldi(mxArray* dataref,int i,const char* fieldname,int field);
65 void SetStructureFieldi(mxArray* dataref,int i,const char* fieldname,double field);
66 void SetStructureFieldi(mxArray* dataref,int i,const char* fieldname,const char* string);
67 int CheckNumMatlabArguments(int nlhs,int NLHS, int nrhs,int NRHS, const char* THISFUNCTION, void (*function)( void ));
68 
69 /*Matlab to double* routines: */
70 int MatlabMatrixToDoubleMatrix(double** pmatrix,int* pmatrix_rows,int* pmatrix_cols,const mxArray* mxmatrix);
71 
72 /*Print*/
73 void ApiPrintf(const char* string);
74 #endif /* _IO_H_ */
Options
Definition: Options.h:9
ApiPrintf
void ApiPrintf(const char *string)
Definition: ApiPrintf.cpp:13
OptionDoubleArrayParse
GenericOption< double * > * OptionDoubleArrayParse(char *name, const mxArray *prhs[])
Definition: FetchMatlabData.cpp:643
NRHS
#define NRHS
Definition: BamgConvertMesh.h:52
IssmDenseMat
Definition: IssmDenseMat.h:39
Contours
Declaration of Contours class.
Definition: Contours.h:10
IssmSeqVec
Definition: IssmSeqVec.h:31
BamgMesh
Definition: BamgMesh.h:7
FetchData
void FetchData(double **pmatrix, int *pM, int *pN, const mxArray *dataref)
Definition: FetchMatlabData.cpp:15
SetStructureFieldi
void SetStructureFieldi(mxArray *dataref, int i, const char *fieldname, int fieldrows, int fieldcols, double *fieldpointer)
Definition: WriteMatlabData.cpp:465
OptionCharParse
GenericOption< char * > * OptionCharParse(char *name, const mxArray *prhs[])
Definition: FetchMatlabData.cpp:662
CheckNumMatlabArguments
int CheckNumMatlabArguments(int nlhs, int NLHS, int nrhs, int NRHS, const char *THISFUNCTION, void(*function)(void))
Definition: CheckNumMatlabArguments.cpp:7
MatlabMatrixToDoubleMatrix
int MatlabMatrixToDoubleMatrix(double **pmatrix, int *pmatrix_rows, int *pmatrix_cols, const mxArray *mxmatrix)
Definition: FetchMatlabData.cpp:509
BamgOpts
Definition: BamgOpts.h:8
FetchChacoData
void FetchChacoData(int *pnvtxs, int **padjacency, int **pstart, float **pewgts, const mxArray *A_IN, const mxArray *EWGTS_IN)
Definition: FetchMatlabData.cpp:477
Option
Definition: Option.h:13
NLHS
#define NLHS
Definition: BamgConvertMesh.h:50
mxGetAssignedField
mxArray * mxGetAssignedField(const mxArray *pmxa_array, int number, const char *field)
Definition: FetchMatlabData.cpp:572
BamgGeom
Definition: BamgGeom.h:7
SetStructureField
void SetStructureField(mxArray *dataref, const char *fieldname, int fieldrows, int fieldcols, double *fieldpointer)
Definition: WriteMatlabData.cpp:441
WriteData
void WriteData(mxArray **pdataref, IssmDenseMat< double > *matrix)
Definition: WriteMatlabData.cpp:270
OptionDoubleParse
GenericOption< double > * OptionDoubleParse(char *name, const mxArray *prhs[])
Definition: FetchMatlabData.cpp:627
OptionParse
Option * OptionParse(char *name, const mxArray *prhs[])
Definition: FetchMatlabData.cpp:606
GenericOption
Definition: GenericOption.h:22
RiftStruct
Definition: RiftStruct.h:8