xref: /petsc/src/sys/ftn-mod/petscsys.h90 (revision a4e01a8b1ea6aa127f3e22aee39c726cf71ba8b6)
1      interface
2        subroutine PetscPrintf(m, c, ierr)
3          use, intrinsic :: ISO_C_binding
4          use petscmpi
5          MPIU_Comm :: m
6          character(len=*) :: c
7          PetscErrorCode :: ierr
8        end subroutine
9
10#if defined(PETSC_HAVE_FORTRAN_FREE_LINE_LENGTH_NONE)
11        subroutine PetscErrorf(ierr, line, file)
12          use, intrinsic :: ISO_C_binding
13          PetscErrorCode, intent(in) :: ierr
14          integer, intent(in) ::  line
15          character(*) file
16        end subroutine PetscErrorf
17
18        subroutine PetscErrorMPI(ierr, line, file)
19          use, intrinsic :: ISO_C_binding
20          PetscErrorCode, intent(inout) :: ierr
21          integer, intent(in) ::  line
22          character(*) file
23        end subroutine PetscErrorMPI
24#else
25        subroutine PetscErrorf(ierr)
26          use, intrinsic :: ISO_C_binding
27          PetscErrorCode, intent(in) :: ierr
28        end subroutine PetscErrorf
29
30        subroutine PetscErrorMPI(ierr)
31          use, intrinsic :: ISO_C_binding
32          PetscErrorCode, intent(inout) :: ierr
33        end subroutine PetscErrorMPI
34#endif
35
36        subroutine MPIU_abort(comm, ierr)
37          use, intrinsic :: ISO_C_binding
38          use petscmpi
39          MPIU_Comm, intent(in) ::  comm
40          PetscErrorCode, intent(in) ::  ierr
41        end subroutine
42
43        subroutine PetscViewerASCIIStdoutSetFileUnit(unit, z)
44          use, intrinsic :: ISO_C_binding
45          integer4 unit
46          PetscErrorCode, intent(out) :: z
47        end subroutine
48
49        subroutine PetscLogEventBegin(event, ierr)
50          use, intrinsic :: ISO_C_binding
51          PetscLogEvent, intent(in) :: event
52          PetscErrorCode, intent(out) :: ierr
53        end subroutine PetscLogEventBegin
54
55        subroutine PetscLogEventEnd(event, ierr)
56          use, intrinsic :: ISO_C_binding
57          PetscLogEvent, intent(in) :: event
58          PetscErrorCode, intent(out) :: ierr
59        end subroutine PetscLogEventEnd
60      end interface
61
62      interface
63        subroutine PetscIntArray1dDestroy(a, ierr)
64          use, intrinsic :: ISO_C_binding
65          PetscInt, pointer :: a(:)
66          PetscErrorCode    :: ierr
67        end subroutine
68      end interface
69
70      interface PetscShmgetAllocateArrayScalar
71        subroutine PetscShmgetAllocateArrayScalar(start, len, d1, ierr)
72          use, intrinsic :: ISO_C_binding
73          PetscInt :: start, len
74          PetscScalar, pointer :: d1(:)
75          PetscErrorCode ierr
76        end subroutine
77      end interface
78
79      interface PetscShmgetDeallocateArrayScalar
80        subroutine PetscShmgetDeallocateArrayScalar(d1, ierr)
81          use, intrinsic :: ISO_C_binding
82          PetscScalar, pointer :: d1(:)
83          PetscErrorCode ierr
84        end subroutine
85      end interface
86
87      interface PetscShmgetAllocateArrayInt
88        subroutine PetscShmgetAllocateArrayInt(start, len, d1, ierr)
89          use, intrinsic :: ISO_C_binding
90          PetscInt :: start, len
91          PetscInt, pointer :: d1(:)
92          PetscErrorCode ierr
93        end subroutine
94      end interface
95
96      interface PetscShmgetDeallocateArrayInt
97        subroutine PetscShmgetDeallocateArrayInt(d1, ierr)
98          use, intrinsic :: ISO_C_binding
99          PetscInt, pointer :: d1(:)
100          PetscErrorCode ierr
101        end subroutine
102      end interface
103