1 #include <petsc/private/fortranimpl.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_BROKEN 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