Changeset 11934


Ignore:
Timestamp:
04/05/12 14:49:12 (13 years ago)
Author:
Eric.Larour
Message:

Redesigned interface API to add Python

Location:
issm/trunk-jpl/src/c/io
Files:
4 added
6 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified issm/trunk-jpl/src/c/io/Matlab/FetchMatlabData.cpp

    r11861 r11934  
    1 /*\file FetchMatlabData.cpp:
     1/*\file FetchData.cpp:
    22 * \brief: general I/O interface to fetch data in matlab
    33 */
     
    1414#if defined(_HAVE_MATLAB_) && defined(_SERIAL_)
    1515#include <mex.h>
    16 /*FUNCTION FetchMatlabData(DataSet** pdataset,const mxArray* dataref){{{1*/
    17 void FetchMatlabData(DataSet** pdataset,const mxArray* dataref){
     16/*FUNCTION FetchData(DataSet** pdataset,const mxArray* dataref){{{1*/
     17void FetchData(DataSet** pdataset,const mxArray* dataref){
    1818
    1919        /*output*/
     
    4848}
    4949/*}}}*/
    50 /*FUNCTION FetchMatlabData(double** pmatrix,int* pM,int *pN,const mxArray* dataref){{{1*/
    51 void FetchMatlabData(double** pmatrix,int* pM,int *pN,const mxArray* dataref){
     50/*FUNCTION FetchData(double** pmatrix,int* pM,int *pN,const mxArray* dataref){{{1*/
     51void FetchData(double** pmatrix,int* pM,int *pN,const mxArray* dataref){
    5252
    5353        double*  outmatrix=NULL;
     
    8484}
    8585/*}}}*/
    86 /*FUNCTION FetchMatlabData(double** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){{{1*/
    87 void FetchMatlabData(double** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){
     86/*FUNCTION FetchData(double** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){{{1*/
     87void FetchData(double** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){
    8888
    8989        double*  outmatrix=NULL;
     
    127127}
    128128/*}}}*/
    129 /*FUNCTION FetchMatlabData(int** pmatrix,int* pM,int *pN,const mxArray* dataref){{{1*/
    130 void FetchMatlabData(int** pmatrix,int* pM,int *pN,const mxArray* dataref){
     129/*FUNCTION FetchData(int** pmatrix,int* pM,int *pN,const mxArray* dataref){{{1*/
     130void FetchData(int** pmatrix,int* pM,int *pN,const mxArray* dataref){
    131131
    132132        int     i,outmatrix_rows,outmatrix_cols;
     
    169169}
    170170/*}}}*/
    171 /*FUNCTION FetchMatlabData(bool** pmatrix,int* pM,int *pN,const mxArray* dataref){{{1*/
    172 void FetchMatlabData(bool** pmatrix,int* pM,int *pN,const mxArray* dataref){
     171/*FUNCTION FetchData(bool** pmatrix,int* pM,int *pN,const mxArray* dataref){{{1*/
     172void FetchData(bool** pmatrix,int* pM,int *pN,const mxArray* dataref){
    173173
    174174        int     i,outmatrix_rows,outmatrix_cols;
     
    211211}
    212212/*}}}*/
    213 /*FUNCTION FetchMatlabData(bool** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){{{1*/
    214 void FetchMatlabData(bool** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){
     213/*FUNCTION FetchData(bool** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){{{1*/
     214void FetchData(bool** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){
    215215
    216216        int      i;
     
    276276}
    277277/*}}}*/
    278 /*FUNCTION FetchMatlabData(Matrix** pmatrix,const mxArray* dataref){{{1*/
    279 void FetchMatlabData(Matrix** pmatrix,const mxArray* dataref){
     278/*FUNCTION FetchData(Matrix** pmatrix,const mxArray* dataref){{{1*/
     279void FetchData(Matrix** pmatrix,const mxArray* dataref){
    280280       
    281281        Matrix* outmatrix=NULL;
     
    297297}
    298298/*}}}*/
    299 /*FUNCTION FetchMatlabData(double** pvector,int* pM,const mxArray* dataref){{{1*/
    300 void FetchMatlabData(double** pvector,int* pM,const mxArray* dataref){
     299/*FUNCTION FetchData(double** pvector,int* pM,const mxArray* dataref){{{1*/
     300void FetchData(double** pvector,int* pM,const mxArray* dataref){
    301301
    302302        double* outvector=NULL;
     
    324324}
    325325/*}}}*/
    326 /*FUNCTION FetchMatlabData(int** pvector,int* pM,const mxArray* dataref){{{1*/
    327 void FetchMatlabData(int** pvector,int* pM,const mxArray* dataref){
     326/*FUNCTION FetchData(int** pvector,int* pM,const mxArray* dataref){{{1*/
     327void FetchData(int** pvector,int* pM,const mxArray* dataref){
    328328
    329329        int    i;
     
    356356}
    357357/*}}}*/
    358 /*FUNCTION FetchMatlabData(bool** pvector,int* pM,const mxArray* dataref){{{1*/
    359 void FetchMatlabData(bool** pvector,int* pM,const mxArray* dataref){
     358/*FUNCTION FetchData(bool** pvector,int* pM,const mxArray* dataref){{{1*/
     359void FetchData(bool** pvector,int* pM,const mxArray* dataref){
    360360
    361361        int    i;
     
    388388}
    389389/*}}}*/
    390 /*FUNCTION FetchMatlabData(float** pvector,int* pM,const mxArray* dataref){{{1*/
    391 void FetchMatlabData(float** pvector,int* pM,const mxArray* dataref){
     390/*FUNCTION FetchData(float** pvector,int* pM,const mxArray* dataref){{{1*/
     391void FetchData(float** pvector,int* pM,const mxArray* dataref){
    392392
    393393        int    i;
     
    420420}
    421421/*}}}*/
    422 /*FUNCTION FetchMatlabData(Vector** pvector,const mxArray* dataref){{{1*/
    423 void FetchMatlabData(Vector** pvector,const mxArray* dataref){
     422/*FUNCTION FetchData(Vector** pvector,const mxArray* dataref){{{1*/
     423void FetchData(Vector** pvector,const mxArray* dataref){
    424424       
    425425        Vector* vector=NULL;
     
    444444}
    445445/*}}}*/
    446 /*FUNCTION FetchMatlabData(char** pstring,const mxArray* dataref){{{1*/
    447 void FetchMatlabData(char** pstring,const mxArray* dataref){
     446/*FUNCTION FetchData(char** pstring,const mxArray* dataref){{{1*/
     447void FetchData(char** pstring,const mxArray* dataref){
    448448
    449449        char* outstring=NULL;
     
    466466        *pstring=outstring;
    467467}
    468 /*FUNCTION FetchMatlabData(char** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){{{1*/
    469 void FetchMatlabData(char** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){
     468/*FUNCTION FetchData(char** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){{{1*/
     469void FetchData(char** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref){
    470470
    471471        int      outmatrix_numel,outmatrix_ndims;
     
    509509}
    510510/*}}}*/
    511 /*FUNCTION FetchMatlabData(double* pscalar,const mxArray* dataref){{{1*/
    512 void FetchMatlabData(double* pscalar,const mxArray* dataref){
     511/*FUNCTION FetchData(double* pscalar,const mxArray* dataref){{{1*/
     512void FetchData(double* pscalar,const mxArray* dataref){
    513513
    514514        double scalar;
     
    526526}
    527527/*}}}*/
    528 /*FUNCTION FetchMatlabData(int* pinteger,const mxArray* dataref){{{1*/
    529 void FetchMatlabData(int* pinteger,const mxArray* dataref){
     528/*FUNCTION FetchData(int* pinteger,const mxArray* dataref){{{1*/
     529void FetchData(int* pinteger,const mxArray* dataref){
    530530
    531531        int integer;
     
    543543}
    544544/*}}}*/
    545 /*FUNCTION FetchMatlabData(bool* pboolean,const mxArray* dataref){{{1*/
    546 void FetchMatlabData(bool* pboolean,const mxArray* dataref){
     545/*FUNCTION FetchData(bool* pboolean,const mxArray* dataref){{{1*/
     546void FetchData(bool* pboolean,const mxArray* dataref){
    547547
    548548        bool* mxbool_ptr=NULL;
     
    560560}
    561561/*}}}*/
    562 /*FUNCTION FetchMatlabData(Parameters** pparameters, DataHandle dataref){{{1*/
    563 void FetchMatlabData(Parameters** pparameters, DataHandle dataref){
     562/*FUNCTION FetchData(Parameters** pparameters, DataHandle dataref){{{1*/
     563void FetchData(Parameters** pparameters, DataHandle dataref){
    564564
    565565        int i,j;
     
    689689                                        char* descriptor=NULL;
    690690                                        pfield2=mxGetCell(pfield,i);
    691                                         FetchMatlabData(&descriptor,pfield2);
     691                                        FetchData(&descriptor,pfield2);
    692692                                        stringarray[i]=descriptor;
    693693                                }
     
    716716                                        int     m,n;
    717717                                        pfield2=mxGetCell(pfield,i);
    718                                         FetchMatlabData(&matrix,&m,&n,pfield2);
     718                                        FetchData(&matrix,&m,&n,pfield2);
    719719                                        array[i]=matrix;
    720720                                        mdims_array[i]=m;
  • TabularUnified issm/trunk-jpl/src/c/io/Matlab/OptionParse.cpp

    r11861 r11934  
    3131        }
    3232
    33         FetchMatlabData(&odouble->values,&odouble->numel,&odouble->ndims,&odouble->size,prhs[0]);
     33        FetchData(&odouble->values,&odouble->numel,&odouble->ndims,&odouble->size,prhs[0]);
    3434
    3535        return(odouble);
     
    5050        }
    5151
    52         FetchMatlabData(&ological->values,&ological->numel,&ological->ndims,&ological->size,prhs[0]);
     52        FetchData(&ological->values,&ological->numel,&ological->ndims,&ological->size,prhs[0]);
    5353
    5454        return(ological);
     
    6969        }
    7070
    71         FetchMatlabData(&ochar->values,&ochar->numel,&ochar->ndims,&ochar->size,prhs[0]);
     71        FetchData(&ochar->values,&ochar->numel,&ochar->ndims,&ochar->size,prhs[0]);
    7272
    7373        return(ochar);
  • TabularUnified issm/trunk-jpl/src/c/io/Matlab/WriteMatlabData.cpp

    r11861 r11934  
    1 /* \file WriteMatlabData.c:
     1/* \file WriteData.c:
    22 * \brief: general interface for writing data
    33 */
     
    1515#include <mex.h>
    1616
    17 /*FUNCTION WriteMatlabData(mxArray** pdataref,DataSet* dataset){{{1*/
    18 void WriteMatlabData(mxArray** pdataref,DataSet* dataset){
     17/*FUNCTION WriteData(mxArray** pdataref,DataSet* dataset){{{1*/
     18void WriteData(mxArray** pdataref,DataSet* dataset){
    1919
    2020        mxArray* dataref=NULL;
     
    4141}
    4242/*}}}*/
    43 /*FUNCTION WriteMatlabData(mxArray** pdataref,Matrix* matrix){{{1*/
    44 void WriteMatlabData(mxArray** pdataref,Matrix* matrix){
     43/*FUNCTION WriteData(mxArray** pdataref,Matrix* matrix){{{1*/
     44void WriteData(mxArray** pdataref,Matrix* matrix){
    4545               
    4646        mxArray* dataref=NULL;
     
    5858}
    5959/*}}}*/
    60 /*FUNCTION WriteMatlabData(mxArray** pdataref,double* matrix, int M,int N){{{1*/
    61 void WriteMatlabData(mxArray** pdataref,double* matrix, int M,int N){
     60/*FUNCTION WriteData(mxArray** pdataref,double* matrix, int M,int N){{{1*/
     61void WriteData(mxArray** pdataref,double* matrix, int M,int N){
    6262       
    6363        mxArray* dataref=NULL;
     
    8181}
    8282/*}}}*/
    83 /*FUNCTION WriteMatlabData(mxArray** pdataref,int* matrix, int M,int N){{{1*/
    84 void WriteMatlabData(mxArray** pdataref,int* matrix, int M,int N){
     83/*FUNCTION WriteData(mxArray** pdataref,int* matrix, int M,int N){{{1*/
     84void WriteData(mxArray** pdataref,int* matrix, int M,int N){
    8585
    8686        mxArray* dataref=NULL;
     
    108108}
    109109/*}}}*/
    110 /*FUNCTION WriteMatlabData(mxArray** pdataref,Vector* vector){{{1*/
    111 void WriteMatlabData(mxArray** pdataref,Vector* vector){
     110/*FUNCTION WriteData(mxArray** pdataref,Vector* vector){{{1*/
     111void WriteData(mxArray** pdataref,Vector* vector){
    112112       
    113113        mxArray* dataref=NULL;
     
    124124}
    125125/*}}}*/
    126 /*FUNCTION WriteMatlabData(mxArray** pdataref,double* vector, int M){{{1*/
    127 void WriteMatlabData(mxArray** pdataref,double* vector, int M){
     126/*FUNCTION WriteData(mxArray** pdataref,double* vector, int M){{{1*/
     127void WriteData(mxArray** pdataref,double* vector, int M){
    128128       
    129129        mxArray* dataref=NULL;
     
    144144}
    145145/*}}}*/
    146 /*FUNCTION WriteMatlabData(mxArray** pdataref,double scalar){{{1*/
    147 void WriteMatlabData(mxArray** pdataref,double scalar){
     146/*FUNCTION WriteData(mxArray** pdataref,double scalar){{{1*/
     147void WriteData(mxArray** pdataref,double scalar){
    148148
    149149        *pdataref=mxCreateDoubleScalar(scalar);
    150150}
    151151/*}}}*/
    152 /*FUNCTION WriteMatlabData(mxArray** pdataref,int integer){{{1*/
    153 void WriteMatlabData(mxArray** pdataref,int integer){
     152/*FUNCTION WriteData(mxArray** pdataref,int integer){{{1*/
     153void WriteData(mxArray** pdataref,int integer){
    154154
    155155                *pdataref=mxCreateDoubleScalar((double)integer);
     
    157157}
    158158/*}}}*/
    159 /*FUNCTION WriteMatlabData(mxArray** pdataref,int boolean){{{1*/
    160 void WriteMatlabData(mxArray** pdataref,bool boolean){
     159/*FUNCTION WriteData(mxArray** pdataref,int boolean){{{1*/
     160void WriteData(mxArray** pdataref,bool boolean){
    161161
    162162        *pdataref=mxCreateDoubleScalar((double)boolean);
     
    164164}
    165165/*}}}*/
    166 /*FUNCTION WriteMatlabData(mxArray** pdataref,char* string){{{1*/
    167 void WriteMatlabData(mxArray** pdataref,char* string){
     166/*FUNCTION WriteData(mxArray** pdataref,char* string){{{1*/
     167void WriteData(mxArray** pdataref,char* string){
    168168
    169169                *pdataref=mxCreateString(string);
    170170}
    171171/*}}}*/
    172 /*FUNCTION WriteMatlabData(mxArray** pdataref,Parameters* parameters){{{1*/
    173 void WriteMatlabData(mxArray** pdataref,Parameters* parameters){
     172/*FUNCTION WriteData(mxArray** pdataref,Parameters* parameters){{{1*/
     173void WriteData(mxArray** pdataref,Parameters* parameters){
    174174
    175175        int i;
  • TabularUnified issm/trunk-jpl/src/c/io/Matlab/matlabio.h

    r11861 r11934  
    55#ifndef _MATLAB_IO_H_
    66#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
    713
    814#include "../../objects/objects.h"
     
    1521#if defined(_HAVE_MATLAB_) && defined(_SERIAL_)
    1622#include <mex.h>
    17 void WriteMatlabData(mxArray** pdataref,DataSet* dataset);
    18 void WriteMatlabData(mxArray** pdataref,Matrix* matrix);
    19 void WriteMatlabData(mxArray** pdataref,double* matrix, int M,int N);
    20 void WriteMatlabData(mxArray** pdataref,int*    matrix, int M,int N);
    21 void WriteMatlabData(mxArray** pdataref,Vector* vector);
    22 void WriteMatlabData(mxArray** pdataref,double* vector, int M);
    23 void WriteMatlabData(mxArray** pdataref,int integer);
    24 void WriteMatlabData(mxArray** pdataref,bool boolean);
    25 void WriteMatlabData(mxArray** pdataref,double scalar);
    26 void WriteMatlabData(mxArray** pdataref,char* string);
    27 void WriteMatlabData(DataHandle* pdataref,Parameters* parameters);
     23void WriteData(mxArray** pdataref,DataSet* dataset);
     24void WriteData(mxArray** pdataref,Matrix* matrix);
     25void WriteData(mxArray** pdataref,double* matrix, int M,int N);
     26void WriteData(mxArray** pdataref,int*    matrix, int M,int N);
     27void WriteData(mxArray** pdataref,Vector* vector);
     28void WriteData(mxArray** pdataref,double* vector, int M);
     29void WriteData(mxArray** pdataref,int integer);
     30void WriteData(mxArray** pdataref,bool boolean);
     31void WriteData(mxArray** pdataref,double scalar);
     32void WriteData(mxArray** pdataref,char* string);
     33void WriteData(DataHandle* pdataref,Parameters* parameters);
    2834
    29 void FetchMatlabData(DataSet** pdataset,const mxArray* dataref);
    30 void FetchMatlabData(double** pmatrix,int* pM,int *pN,const mxArray* dataref);
    31 void FetchMatlabData(double** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref);
    32 void FetchMatlabData(int** pmatrix,int* pM,int *pN,const mxArray* dataref);
    33 void FetchMatlabData(bool** pmatrix,int* pM,int *pN,const mxArray* dataref);
    34 void FetchMatlabData(bool** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref);
    35 void FetchMatlabData(Matrix** pmatrix,const mxArray* dataref);
    36 void FetchMatlabData(int** pvector,int* pM,const mxArray* dataref);
    37 void FetchMatlabData(float** pvector,int* pM,const mxArray* dataref);
    38 void FetchMatlabData(double** pvector,int* pM,const mxArray* dataref);
    39 void FetchMatlabData(bool** pvector,int* pM,const mxArray* dataref);
    40 void FetchMatlabData(Vector** pvector,const mxArray* dataref);
    41 void FetchMatlabData(char** pstring,const mxArray* dataref);
    42 void FetchMatlabData(char** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref);
    43 void FetchMatlabData(double* pscalar,const mxArray* dataref);
    44 void FetchMatlabData(int* pinteger,const mxArray* dataref);
    45 void FetchMatlabData(bool* pbool,const mxArray* dataref);
    46 void FetchMatlabData(Parameters** pparameters, DataHandle dataref);
     35void FetchData(DataSet** pdataset,const mxArray* dataref);
     36void FetchData(double** pmatrix,int* pM,int *pN,const mxArray* dataref);
     37void FetchData(double** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref);
     38void FetchData(int** pmatrix,int* pM,int *pN,const mxArray* dataref);
     39void FetchData(bool** pmatrix,int* pM,int *pN,const mxArray* dataref);
     40void FetchData(bool** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref);
     41void FetchData(Matrix** pmatrix,const mxArray* dataref);
     42void FetchData(int** pvector,int* pM,const mxArray* dataref);
     43void FetchData(float** pvector,int* pM,const mxArray* dataref);
     44void FetchData(double** pvector,int* pM,const mxArray* dataref);
     45void FetchData(bool** pvector,int* pM,const mxArray* dataref);
     46void FetchData(Vector** pvector,const mxArray* dataref);
     47void FetchData(char** pstring,const mxArray* dataref);
     48void FetchData(char** pmatrix,int* pnumel,int* pndims,int** psize,const mxArray* dataref);
     49void FetchData(double* pscalar,const mxArray* dataref);
     50void FetchData(int* pinteger,const mxArray* dataref);
     51void FetchData(bool* pbool,const mxArray* dataref);
     52void FetchData(Parameters** pparameters, DataHandle dataref);
    4753
    4854Option* OptionParse(char* name, const mxArray* prhs[]);
  • TabularUnified issm/trunk-jpl/src/c/io/PrintfFunction.cpp

    r11853 r11934  
    99#include "../include/include.h"
    1010
    11 #ifdef _SERIAL_
     11#if defined(_HAVE_MATLAB_) && defined(_SERIAL_)
    1212#include "mex.h"
    1313#endif
     
    5353
    5454        /*Ok, if we are running in parallel, get node 0 to print*/
    55 #ifdef _SERIAL_
     55#if defined(_HAVE_MATLAB_) && defined(_SERIAL_)
    5656        mexPrintf(buffer);
    5757#else
  • TabularUnified issm/trunk-jpl/src/c/io/io.h

    r11861 r11934  
    33 */
    44
    5 #ifndef _IO_H_
    6 #define _IO_H_
     5#ifndef _ISSM_IO_H_
     6#define _ISSM_IO_H_
    77
    88#ifdef HAVE_CONFIG_H //config.h {{{1
     
    1919#endif
    2020
     21#if defined(_HAVE_PYTHON_) && defined(_SERIAL_)
     22#include "./Python/pythonio.h"
     23#endif
     24
    2125/*printf: */
    2226int PrintfFunction(const char* format,...);
Note: See TracChangeset for help on using the changeset viewer.