1 #include <petsc-private/fortranimpl.h> 2 #include <petscviewer.h> 3 4 #if defined(PETSC_HAVE_FORTRAN_CAPS) 5 #define petscviewersetformat_ PETSCVIEWERSETFORMAT 6 #define petscviewersettype_ PETSCVIEWERSETTYPE 7 #define petscviewerpushformat_ PETSCVIEWERPUSHFORMAT 8 #define petscviewerpopformat_ PETSCVIEWERPOPFORMAT 9 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) 10 #define petscviewersetformat_ petscviewersetformat 11 #define petscviewersettype_ petscviewersettype 12 #define petscviewerpushformat_ petscviewerpushformat 13 #define petscviewerpopformat_ petscviewerpopformat 14 #endif 15 16 PETSC_EXTERN void PETSC_STDCALL petscviewersettype_(PetscViewer *x,CHAR type_name PETSC_MIXED_LEN(len),PetscErrorCode *ierr PETSC_END_LEN(len)) 17 { 18 char *t; 19 20 FIXCHAR(type_name,len,t); 21 *ierr = PetscViewerSetType(*x,t); 22 FREECHAR(type_name,t); 23 } 24 25 PETSC_EXTERN void PETSC_STDCALL petscviewersetformat_(PetscViewer *vin,PetscViewerFormat *format,PetscErrorCode *ierr) 26 { 27 PetscViewer v; 28 PetscPatchDefaultViewers_Fortran(vin,v); 29 *ierr = PetscViewerSetFormat(v,*format); 30 } 31 32 PETSC_EXTERN void PETSC_STDCALL petscviewerpushformat_(PetscViewer *vin,PetscViewerFormat *format,PetscErrorCode *ierr) 33 { 34 PetscViewer v; 35 PetscPatchDefaultViewers_Fortran(vin,v); 36 *ierr = PetscViewerPushFormat(v,*format); 37 } 38 39 PETSC_EXTERN void PETSC_STDCALL petscviewerpopformat_(PetscViewer *vin,PetscErrorCode *ierr) 40 { 41 PetscViewer v; 42 PetscPatchDefaultViewers_Fortran(vin,v); 43 *ierr = PetscViewerPopFormat(v); 44 } 45