X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/4b7c40aed4e3b4654a3fb93eaa53e97e4b1c9e40..aa3595ed3c903167f52eeeab8e636bec96b258dd:/src/smpi/smpi_f77.cpp diff --git a/src/smpi/smpi_f77.cpp b/src/smpi/smpi_f77.cpp index 76683814c6..bc4438da5b 100644 --- a/src/smpi/smpi_f77.cpp +++ b/src/smpi/smpi_f77.cpp @@ -778,10 +778,11 @@ void mpi_info_set_( int *info, char *key, char *value, int* ierr, unsigned int k } char* tvalue = xbt_new(char,valuelen+1); strncpy(tvalue, value, valuelen); - tvalue[valuelen]='\0'; + *ierr = MPI_Info_set( smpi_info_f2c(*info), tkey, tvalue); xbt_free(tkey); + xbt_free(tvalue); } void mpi_info_get_ (int* info,char *key,int* valuelen, char *value, int *flag, int* ierr, unsigned int keylen ){ @@ -1754,3 +1755,28 @@ void mpi_comm_get_parent_ ( int* parent, int* ierr){ *parent = smpi_comm_c2f(tmp); } } + +void mpi_file_close_ ( int* file, int* ierr){ + *ierr= MPI_File_close(reinterpret_cast(*file)); +} + +void mpi_file_delete_ ( char* filename, int* info, int* ierr){ + *ierr= MPI_File_delete(filename, smpi_info_f2c(*info)); +} + +void mpi_file_open_ ( int* comm, char* filename, int* amode, int* info, int* fh, int* ierr){ + *ierr= MPI_File_open(smpi_comm_f2c(*comm), filename, *amode, smpi_info_f2c(*info), reinterpret_cast(*fh)); +} + +void mpi_file_set_view_ ( int* fh, long long int* offset, int* etype, int* filetype, char* datarep, int* info, int* ierr){ + *ierr= MPI_File_set_view(reinterpret_cast(*fh) , reinterpret_cast(*offset), smpi_type_f2c(*etype), smpi_type_f2c(*filetype), datarep, smpi_info_f2c(*info)); +} + +void mpi_file_read_ ( int* fh, void* buf, int* count, int* datatype, MPI_Status* status, int* ierr){ + *ierr= MPI_File_read(reinterpret_cast(*fh), buf, *count, smpi_type_f2c(*datatype), status); +} + +void mpi_file_write_ ( int* fh, void* buf, int* count, int* datatype, MPI_Status* status, int* ierr){ + *ierr= MPI_File_write(reinterpret_cast(*fh), buf, *count, smpi_type_f2c(*datatype), status); +} +