1af0996ceSBarry Smith #include <petsc/private/fortranimpl.h> 255fcb7f5SSatish Balay 355fcb7f5SSatish Balay #if defined(PETSC_HAVE_FORTRAN_CAPS) 455fcb7f5SSatish Balay #define petscbinaryopen_ PETSCBINARYOPEN 5*9860990eSLisandro Dalcin #define petscbinaryread_ PETSCBINARYREAD 6c1bccaadSBarry Smith #define petsctestfile_ PETSCTESTFILE 755fcb7f5SSatish Balay #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) 855fcb7f5SSatish Balay #define petscbinaryopen_ petscbinaryopen 9*9860990eSLisandro Dalcin #define petscbinaryread_ petscbinaryread 10a8cc4164SSatish Balay #define petsctestfile_ petsctestfile 1155fcb7f5SSatish Balay #endif 1255fcb7f5SSatish Balay 13390e1bf2SBarry Smith PETSC_EXTERN void PETSC_STDCALL petscbinaryopen_(char* name PETSC_MIXED_LEN(len),PetscFileMode *type,int *fd, 1455fcb7f5SSatish Balay PetscErrorCode *ierr PETSC_END_LEN(len)) 1555fcb7f5SSatish Balay { 1655fcb7f5SSatish Balay char *c1; 1755fcb7f5SSatish Balay 1855fcb7f5SSatish Balay FIXCHAR(name,len,c1); 19d49bb8f9SBarry Smith *ierr = PetscBinaryOpen(c1,*type,fd);if (*ierr) return; 2055fcb7f5SSatish Balay FREECHAR(name,c1); 2155fcb7f5SSatish Balay } 2255fcb7f5SSatish Balay 23*9860990eSLisandro Dalcin PETSC_EXTERN void PETSC_STDCALL petscbinaryread_(int *fd,void *data,PetscInt *num,PetscInt *count,PetscDataType *type,int *ierr) 24*9860990eSLisandro Dalcin { 25*9860990eSLisandro Dalcin CHKFORTRANNULLINTEGER(count); 26*9860990eSLisandro Dalcin *ierr = PetscBinaryRead(*fd,data,*num,count,*type);if (*ierr) return; 27*9860990eSLisandro Dalcin } 28*9860990eSLisandro Dalcin 29390e1bf2SBarry Smith PETSC_EXTERN void PETSC_STDCALL petsctestfile_(char* name PETSC_MIXED_LEN(len),char* mode PETSC_MIXED_LEN(len1),PetscBool *flg,PetscErrorCode *ierr PETSC_END_LEN(len) PETSC_END_LEN(len1)) 30c1bccaadSBarry Smith { 31ca43db0aSBarry Smith char *c1; 32c1bccaadSBarry Smith 33c1bccaadSBarry Smith FIXCHAR(name,len,c1); 34d49bb8f9SBarry Smith *ierr = PetscTestFile(c1,*mode,flg);if (*ierr) return; 35c1bccaadSBarry Smith FREECHAR(name,c1); 36c1bccaadSBarry Smith } 37