xref: /petsc/src/sys/classes/viewer/interface/ftn-custom/zviewaf.c (revision 2b8d69ca7ea5fe9190df62c1dce3bbd66fce84dd)
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 PetscErrorCode PetscViewerSetFormatDeprecated(PetscViewer,PetscViewerFormat);
17 
18 PETSC_EXTERN void PETSC_STDCALL petscviewersetformat_(PetscViewer *vin,PetscViewerFormat *format,PetscErrorCode *ierr)
19 {
20   PetscViewer v;
21   PetscPatchDefaultViewers_Fortran(vin,v);
22   *ierr = PetscViewerSetFormatDeprecated(v,*format);
23 }
24 
25 PETSC_EXTERN void PETSC_STDCALL petscviewersettype_(PetscViewer *x,CHAR type_name PETSC_MIXED_LEN(len),PetscErrorCode *ierr PETSC_END_LEN(len))
26 {
27   char *t;
28 
29   FIXCHAR(type_name,len,t);
30   *ierr = PetscViewerSetType(*x,t);
31   FREECHAR(type_name,t);
32 }
33 
34 
35 
36 PETSC_EXTERN void PETSC_STDCALL petscviewerpushformat_(PetscViewer *vin,PetscViewerFormat *format,PetscErrorCode *ierr)
37 {
38   PetscViewer v;
39   PetscPatchDefaultViewers_Fortran(vin,v);
40   *ierr = PetscViewerPushFormat(v,*format);
41 }
42 
43 PETSC_EXTERN void PETSC_STDCALL petscviewerpopformat_(PetscViewer *vin,PetscErrorCode *ierr)
44 {
45   PetscViewer v;
46   PetscPatchDefaultViewers_Fortran(vin,v);
47   *ierr = PetscViewerPopFormat(v);
48 }
49