Changeset 12120


Ignore:
Timestamp:
04/24/12 21:44:26 (13 years ago)
Author:
Eric.Larour
Message:

Added fetch data capability for double* vector

Location:
issm/trunk-jpl/src/c/python/io
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/python/io/FetchPythonData.cpp

    r12112 r12120  
    8181}
    8282/*}}}*/
     83/*FUNCTION FetchData(double** pvector,int* pM, PyObject* py_vector){{{1*/
     84void FetchData(double** pvector,int* pM,PyObject* py_vector){
     85
     86        /*output: */
     87        double* vector=NULL;
     88        int M;
     89        int ndim;
     90        npy_intp*  dims=NULL;
     91
     92        /*retrive dimensions: */
     93        ndim=PyArray_NDIM((const PyArrayObject*)py_vector);
     94        if(ndim!=1)_error_("expecting an Mx1 vector in input!");
     95        dims=PyArray_DIMS((PyArrayObject*)py_vector);
     96        M=dims[0];
     97       
     98        /*retrieve internal value: */
     99        vector=(double*)PyArray_DATA((PyArrayObject*)py_vector);
     100
     101        /*output: */
     102        if(pM)*pM=M;
     103        if(pvector)*pvector=vector;
     104}
     105/*}}}*/
    83106
    84107/*Python version dependent: */
  • issm/trunk-jpl/src/c/python/io/pythonio.h

    r12112 r12120  
    4141//void FetchData(int** pvector,int* pM,PyObject* py_ref);
    4242//void FetchData(float** pvector,int* pM,PyObject* py_ref);
    43 //void FetchData(double** pvector,int* pM,PyObject* py_ref);
    4443//void FetchData(bool** pvector,int* pM,PyObject* py_ref);
    4544//void FetchData(Vector** pvector,PyObject* py_ref);
    4645//void FetchData(char** pmatrix,int* pnumel,int* pndims,int** psize,PyObject* py_ref);
    4746//void FetchData(Parameters** pparameters, DataHandle py_ref);
     47void FetchData(double** pvector,int* pM,PyObject* py_ref);
    4848void FetchData(double** pmatrix,int* pM,int *pN,PyObject* py_array);
    4949void FetchData(char** pstring,PyObject* py_unicode);
Note: See TracChangeset for help on using the changeset viewer.