1 #include <petsc/private/ftnimpl.h> 2 #include <petscdraw.h> 3 #include <petscviewer.h> 4 5 #if defined(PETSC_HAVE_FORTRAN_CAPS) 6 #define petsc_viewer_draw_ PETSC_VIEWER_DRAW 7 #define petscviewermonitorlgsetup_ PETSCVIEWERMONITORLGSETUP 8 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) 9 #define petsc_viewer_draw_ petsc_viewer_draw 10 #define petscviewermonitorlgsetup_ petscviewermonitorlgsetup 11 #endif 12 13 #if defined(PETSC_HAVE_FORTRAN_UNDERSCORE_UNDERSCORE) 14 #define petsc_viewer_draw_ petsc_viewer_draw__ 15 #endif 16 17 PETSC_EXTERN PetscViewer petsc_viewer_draw_(MPI_Comm *comm) 18 { 19 return PETSC_VIEWER_DRAW_(MPI_Comm_f2c(*(MPI_Fint *)&*comm)); 20 } 21 22 PETSC_EXTERN void petscviewermonitorlgsetup_(PetscViewer *v, char *host, char *label, char *metric, int l, const char **names, int *x, int *y, int *m, int *n, PetscErrorCode *ierr, PETSC_FORTRAN_CHARLEN_T len1, PETSC_FORTRAN_CHARLEN_T len2, PETSC_FORTRAN_CHARLEN_T len3) 23 { 24 char *t1, *t2, *t3; 25 26 FIXCHAR(host, len1, t1); 27 FIXCHAR(label, len2, t2); 28 FIXCHAR(metric, len3, t3); 29 *ierr = PetscViewerMonitorLGSetUp(*v, t1, t2, t3, l, names, *x, *y, *m, *n); 30 } 31