1 #include <petsc/private/fortranimpl.h> 2 3 #if defined(PETSC_HAVE_FORTRAN_CAPS) 4 #define petscfopen_ PETSCFOPEN 5 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) 6 #define petscfopen_ petscfopen 7 #endif 8 9 PETSC_EXTERN void PETSC_STDCALL petscfopen_(MPI_Comm *comm,CHAR fname PETSC_MIXED_LEN(len1),CHAR fmode PETSC_MIXED_LEN(len2), 10 FILE **file,PetscErrorCode *ierr PETSC_END_LEN(len1) PETSC_END_LEN(len2)) 11 { 12 char *c1,*c2; 13 14 FIXCHAR(fname,len1,c1); 15 FIXCHAR(fmode,len2,c2); 16 *ierr = PetscFOpen(MPI_Comm_f2c(*(MPI_Fint*)&*comm),c1,c2,file); 17 FREECHAR(fname,c1); 18 FREECHAR(fmode,c2); 19 } 20 21