xref: /petsc/src/sys/classes/viewer/impls/ascii/ftn-custom/zvcreatef.c (revision 5c6c1daec53e1d9ab0bec9db5309fd8fc7645b8d)
1*5c6c1daeSBarry Smith #include <petsc-private/fortranimpl.h>
2*5c6c1daeSBarry Smith 
3*5c6c1daeSBarry Smith #if defined(PETSC_HAVE_FORTRAN_CAPS)
4*5c6c1daeSBarry Smith #define petsc_viewer_stdout__      PETSC_VIEWER_STDOUT_BROKEN
5*5c6c1daeSBarry Smith #define petscviewerasciiopen_      PETSCVIEWERASCIIOPEN
6*5c6c1daeSBarry Smith #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
7*5c6c1daeSBarry Smith #define petscviewerasciiopen_      petscviewerasciiopen
8*5c6c1daeSBarry Smith #define petsc_viewer_stdout__      petsc_viewer_stdout_
9*5c6c1daeSBarry Smith #endif
10*5c6c1daeSBarry Smith 
11*5c6c1daeSBarry Smith #if defined(PETSC_HAVE_FORTRAN_UNDERSCORE_UNDERSCORE)
12*5c6c1daeSBarry Smith #define petsc_viewer_stdout__      petsc_viewer_stdout___
13*5c6c1daeSBarry Smith #endif
14*5c6c1daeSBarry Smith 
15*5c6c1daeSBarry Smith EXTERN_C_BEGIN
16*5c6c1daeSBarry Smith void PETSC_STDCALL petscviewerasciiopen_(MPI_Comm *comm,CHAR name PETSC_MIXED_LEN(len),PetscViewer *lab,
17*5c6c1daeSBarry Smith                                     PetscErrorCode *ierr PETSC_END_LEN(len))
18*5c6c1daeSBarry Smith {
19*5c6c1daeSBarry Smith   char   *c1;
20*5c6c1daeSBarry Smith   FIXCHAR(name,len,c1);
21*5c6c1daeSBarry Smith   *ierr = PetscViewerASCIIOpen(MPI_Comm_f2c(*(MPI_Fint *)&*comm),c1,lab);
22*5c6c1daeSBarry Smith   FREECHAR(name,c1);
23*5c6c1daeSBarry Smith }
24*5c6c1daeSBarry Smith 
25*5c6c1daeSBarry Smith PetscViewer PETSC_STDCALL petsc_viewer_stdout__(MPI_Comm *comm)
26*5c6c1daeSBarry Smith {
27*5c6c1daeSBarry Smith   return PETSC_VIEWER_STDOUT_(MPI_Comm_f2c(*(MPI_Fint *)&*comm));
28*5c6c1daeSBarry Smith }
29*5c6c1daeSBarry Smith 
30*5c6c1daeSBarry Smith EXTERN_C_END
31*5c6c1daeSBarry Smith 
32