win_rget_dp Subroutine

private subroutine win_rget_dp(this, target_rank, target_disp, count, buffer, request)

Type Bound

win_t

Arguments

Type IntentOptional Attributes Name
class(win_t), intent(in) :: this
integer(kind=int32), intent(in) :: target_rank
integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
integer(kind=int32), intent(in) :: count
real(kind=dp), intent(out) :: buffer(*)
type(request_t), intent(out) :: request

Calls

proc~~win_rget_dp~~CallsGraph proc~win_rget_dp win_t%win_rget_dp mpi_rget mpi_rget proc~win_rget_dp->mpi_rget

Called by

proc~~win_rget_dp~~CalledByGraph proc~win_rget_dp win_t%win_rget_dp proc~darray_get_dp darray_get_dp proc~darray_get_dp->proc~win_rget_dp interface~darray_get darray_get interface~darray_get->proc~darray_get_dp

Variables

Type Visibility Attributes Name Initial
integer(kind=int32), private :: ierr

Source Code

   subroutine win_rget_dp(this, target_rank, target_disp, count, buffer, request)
      class(win_t), intent(in) :: this
      integer(int32), intent(in) :: target_rank
      integer(MPI_ADDRESS_KIND), intent(in) :: target_disp
      integer(int32), intent(in) :: count
      real(dp), intent(out) :: buffer(*)
      type(request_t), intent(out) :: request
      integer(int32) :: ierr

      call MPI_Rget(buffer, count, MPI_DOUBLE_PRECISION, &
                    target_rank, target_disp, count, MPI_DOUBLE_PRECISION, &
                    this%m_win, request%m_request, ierr)
      request%is_valid = .true.
   end subroutine win_rget_dp