1 #include "zpetsc.h" 2 #include "petsc.h" 3 4 #if defined(PETSC_HAVE_FORTRAN_CAPS) 5 #define petscfprintf_ PETSCFPRINTF 6 #define petscprintf_ PETSCPRINTF 7 #define petscsynchronizedfprintf_ PETSCSYNCHRONIZEDFPRINTF 8 #define petscsynchronizedprintf_ PETSCSYNCHRONIZEDPRINTF 9 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) 10 #define petscfprintf_ petscfprintf 11 #define petscprintf_ petscprintf 12 #define petscsynchronizedfprintf_ petscsynchronizedfprintf 13 #define petscsynchronizedprintf_ petscsynchronizedprintf 14 #endif 15 16 EXTERN_C_BEGIN 17 18 void PETSC_STDCALL petscfprintf_(MPI_Comm *comm,FILE **file,CHAR fname PETSC_MIXED_LEN(len1),PetscErrorCode *ierr PETSC_END_LEN(len1)) 19 { 20 char *c1; 21 22 FIXCHAR(fname,len1,c1); 23 *ierr = PetscFPrintf((MPI_Comm)PetscToPointerComm(*comm),*file,c1); 24 FREECHAR(fname,c1); 25 } 26 27 void PETSC_STDCALL petscprintf_(MPI_Comm *comm,CHAR fname PETSC_MIXED_LEN(len1),PetscErrorCode *ierr PETSC_END_LEN(len1)) 28 { 29 char *c1; 30 31 FIXCHAR(fname,len1,c1); 32 *ierr = PetscPrintf((MPI_Comm)PetscToPointerComm(*comm),c1); 33 FREECHAR(fname,c1); 34 } 35 36 void PETSC_STDCALL petscsynchronizedfprintf_(MPI_Comm *comm,FILE **file,CHAR fname PETSC_MIXED_LEN(len1),PetscErrorCode *ierr PETSC_END_LEN(len1)) 37 { 38 char *c1; 39 40 FIXCHAR(fname,len1,c1); 41 *ierr = PetscSynchronizedFPrintf((MPI_Comm)PetscToPointerComm(*comm),*file,c1); 42 FREECHAR(fname,c1); 43 } 44 45 void PETSC_STDCALL petscsynchronizedprintf_(MPI_Comm *comm,CHAR fname PETSC_MIXED_LEN(len1),PetscErrorCode *ierr PETSC_END_LEN(len1)) 46 { 47 char *c1; 48 49 FIXCHAR(fname,len1,c1); 50 *ierr = PetscSynchronizedPrintf((MPI_Comm)PetscToPointerComm(*comm),c1); 51 FREECHAR(fname,c1); 52 } 53 54 EXTERN_C_END 55