1
1
openmpi/ompi/mpi/fortran/use-mpi-f08-desc/mpi-f-interfaces-bind.h
Ralph Castain 1e2019ce2a Revert "Update to sync with OMPI master and cleanup to build"
This reverts commit cb55c88a8b7817d5891ff06a447ea190b0e77479.
2016-11-22 15:03:20 -08:00

79 строки
2.2 KiB
C

! -*- f90 -*-
!
! Copyright (c) 2009-2012 Cisco Systems, Inc. All rights reserved.
! Copyright (c) 2009-2012 Los Alamos National Security, LLC.
! All rights reserved.
! $COPYRIGHT$
!
! This file provides the interface specifications for the MPI Fortran
! API bindings. It effectively maps between public names ("MPI_Init")
! and the back-end implementation subroutine name (e.g., "ompi_init_f").
interface
subroutine ompi_comm_rank_f(comm,rank,ierror) &
BIND(C, name="ompi_comm_rank_f")
use :: mpi_f08_types
implicit none
INTEGER, INTENT(IN) :: comm
INTEGER, INTENT(OUT) :: rank
INTEGER, INTENT(OUT) :: ierror
end subroutine ompi_comm_rank_f
subroutine ompi_comm_size_f(comm,size,ierror) &
BIND(C, name="ompi_comm_size_f")
use :: mpi_f08_types
implicit none
INTEGER, INTENT(IN) :: comm
INTEGER, INTENT(OUT) :: size
INTEGER, INTENT(OUT) :: ierror
end subroutine ompi_comm_size_f
subroutine ompi_finalize_f(ierror) &
BIND(C, name="ompi_finalize_f")
use :: mpi_f08_types
implicit none
INTEGER, INTENT(OUT) :: ierror
end subroutine ompi_finalize_f
subroutine ompi_init_f(ierror) &
BIND(C, name="ompi_init_f")
use :: mpi_f08_types
implicit none
INTEGER, INTENT(OUT) :: ierror
end subroutine ompi_init_f
! ompi_send_f/ompi_recv_f interfaces not needed as they are called from C
!
subroutine ompi_type_commit_f(datatype,ierror) &
BIND(C, name="ompi_type_commit_f")
use :: mpi_f08_types
implicit none
INTEGER, INTENT(INOUT) :: datatype
INTEGER, INTENT(OUT) :: ierror
end subroutine ompi_type_commit_f
subroutine ompi_type_contiguous_f(count,oldtype,newtype,ierror) &
BIND(C, name="ompi_type_contiguous_f")
use :: mpi_f08_types
implicit none
INTEGER, INTENT(IN) :: count
INTEGER, INTENT(IN) :: oldtype
INTEGER, INTENT(OUT) :: newtype
INTEGER, INTENT(OUT) :: ierror
end subroutine ompi_type_contiguous_f
subroutine ompi_type_vector_f(count,blocklength,stride,oldtype,newtype,ierror) &
BIND(C, name="ompi_type_vector_f")
use :: mpi_f08_types
implicit none
INTEGER, INTENT(IN) :: count, blocklength, stride
INTEGER, INTENT(IN) :: oldtype
INTEGER, INTENT(OUT) :: newtype
INTEGER, INTENT(OUT) :: ierror
end subroutine ompi_type_vector_f
end interface