ForwardDataMessage Derived Type

type, public, extends(AbstractMessage) :: ForwardDataMessage


Inherits

type~~forwarddatamessage~~InheritsGraph type~forwarddatamessage ForwardDataMessage type~abstractmessage AbstractMessage type~forwarddatamessage->type~abstractmessage

Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: file_name
character(len=:), public, allocatable :: var_name
integer(kind=MPI_ADDRESS_KIND), public :: offset
integer, public :: collection_id
integer, public, allocatable :: count(:)
integer, public :: request_id
integer, public :: type_kind

Constructor

public interface ForwardDataMessage

  • private function new_ForwardDataMessage(request_id, collection_id, file_name, var_name, type_kind, count, offset) result(message)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: request_id
    integer, intent(in) :: collection_id
    character(len=*), intent(in) :: file_name
    character(len=*), intent(in) :: var_name
    integer :: type_kind
    integer, intent(in) :: count(:)
    integer(kind=MPI_ADDRESS_KIND), intent(in) :: offset

    Return Value type(ForwardDataMessage)


Type-Bound Procedures

procedure, public :: deserialize

  • private subroutine deserialize(this, buffer, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(ForwardDataMessage), intent(inout) :: this
    integer, intent(in) :: buffer(:)
    integer, intent(out), optional :: rc

procedure, public :: dispatch

  • private recursive subroutine dispatch(this, visitor, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(AbstractMessage), intent(in) :: this
    class(SurrogateMessageVisitor), intent(inout), target :: visitor
    integer, intent(out), optional :: rc

procedure, public :: get_length

  • private function get_length(this) result(length)

    Arguments

    Type IntentOptional Attributes Name
    class(ForwardDataMessage), intent(in) :: this

    Return Value integer

procedure, public, nopass :: get_type_id

  • private function get_type_id() result(type_id)

    Arguments

    None

    Return Value integer

procedure, public :: serialize

  • private subroutine serialize(this, buffer, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(ForwardDataMessage), intent(in) :: this
    integer, intent(inout) :: buffer(:)
    integer, intent(out), optional :: rc

Source Code

   type, extends(AbstractMessage) :: ForwardDataMessage
      integer :: request_id
      integer :: collection_id
      character(len=:), allocatable :: file_name
      character(len=:), allocatable :: var_name
      integer :: type_kind
      integer, allocatable :: count(:)
      integer(kind=MPI_ADDRESS_KIND) :: offset 
   contains
      procedure, nopass :: get_type_id
      procedure :: get_length
      procedure :: serialize
      procedure :: deserialize
   end type ForwardDataMessage