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 #define petscviewerandformatcreate_ PETSCVIEWERANDFORMATCREATE 10 #define petscviewerandformatdestroy_ PETSCVIEWERANDFORMATDESTROY 11 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) 12 #define petscviewersetformat_ petscviewersetformat 13 #define petscviewersettype_ petscviewersettype 14 #define petscviewerpushformat_ petscviewerpushformat 15 #define petscviewerpopformat_ petscviewerpopformat 16 #define petscviewerandformatcreate_ petscviewerandformatcreate 17 #define petscviewerandformatdestroy_ petscviewerandformatdestroy 18 #endif 19 20 PETSC_EXTERN PetscErrorCode PetscViewerSetFormatDeprecated(PetscViewer,PetscViewerFormat); 21 22 PETSC_EXTERN void PETSC_STDCALL petscviewerandformatcreate_(PetscViewer *vin,PetscViewerFormat *format,PetscViewerAndFormat **vf,PetscErrorCode *ierr) 23 { 24 PetscViewer v; 25 PetscPatchDefaultViewers_Fortran(vin,v); 26 *ierr = PetscViewerAndFormatCreate(v,*format,vf); 27 } 28 29 PETSC_EXTERN void petscviewerandformatdestroy_(PetscViewerAndFormat **vf,PetscErrorCode *ierr) 30 { 31 *ierr = PetscViewerAndFormatDestroy(vf); 32 } 33 34 PETSC_EXTERN void PETSC_STDCALL petscviewersetformat_(PetscViewer *vin,PetscViewerFormat *format,PetscErrorCode *ierr) 35 { 36 PetscViewer v; 37 PetscPatchDefaultViewers_Fortran(vin,v); 38 *ierr = PetscViewerSetFormatDeprecated(v,*format); 39 } 40 41 PETSC_EXTERN void PETSC_STDCALL petscviewersettype_(PetscViewer *x,CHAR type_name PETSC_MIXED_LEN(len),PetscErrorCode *ierr PETSC_END_LEN(len)) 42 { 43 char *t; 44 45 FIXCHAR(type_name,len,t); 46 *ierr = PetscViewerSetType(*x,t); 47 FREECHAR(type_name,t); 48 } 49 50 51 52 PETSC_EXTERN void PETSC_STDCALL petscviewerpushformat_(PetscViewer *vin,PetscViewerFormat *format,PetscErrorCode *ierr) 53 { 54 PetscViewer v; 55 PetscPatchDefaultViewers_Fortran(vin,v); 56 *ierr = PetscViewerPushFormat(v,*format); 57 } 58 59 PETSC_EXTERN void PETSC_STDCALL petscviewerpopformat_(PetscViewer *vin,PetscErrorCode *ierr) 60 { 61 PetscViewer v; 62 PetscPatchDefaultViewers_Fortran(vin,v); 63 *ierr = PetscViewerPopFormat(v); 64 } 65