MessageVisitor Derived Type

type, public, abstract, extends(SurrogateMessageVisitor) :: MessageVisitor


Inherits

type~~messagevisitor~~InheritsGraph type~messagevisitor MessageVisitor type~surrogatemessagevisitor SurrogateMessageVisitor type~messagevisitor->type~surrogatemessagevisitor

Inherited by

type~~messagevisitor~~InheritedByGraph type~messagevisitor MessageVisitor type~basethread BaseThread type~basethread->type~messagevisitor type~clientthread ClientThread type~clientthread->type~basethread type~serverthread ServerThread type~serverthread->type~basethread type~simplesocket SimpleSocket type~simplesocket->type~basethread visitor type~fakeextdata FakeExtData type~fakeextdata->type~clientthread c type~fakeextdata~2 FakeExtData type~fakeextdata~2->type~clientthread c type~fakehistdata FakeHistData type~fakehistdata->type~clientthread i_c, o_c type~fakehistdata0 FakeHistData0 type~fakehistdata0->type~clientthread i_c, o_c type~fastclientthread FastClientThread type~fastclientthread->type~clientthread type~mockclient MockClient type~mockclient->type~clientthread type~mockclientthread MockClientThread type~mockclientthread->type~clientthread type~mockserverthread MockServerThread type~mockserverthread->type~serverthread type~v_wrapper~11 v_Wrapper type~v_wrapper~11->type~clientthread item type~v_wrapper~12 v_Wrapper type~v_wrapper~12->type~serverthread item type~clientthreadvector ClientThreadVector type~clientthreadvector->type~v_wrapper~11 elements type~clientthreadvectoriterator ClientThreadVectorIterator type~clientthreadvectoriterator->type~v_wrapper~11 elements type~clientthreadvectorriterator ClientThreadVectorRIterator type~clientthreadvectorriterator->type~v_wrapper~11 elements type~serverthreadvector ServerThreadVector type~serverthreadvector->type~v_wrapper~12 elements type~serverthreadvectoriterator ServerThreadVectorIterator type~serverthreadvectoriterator->type~v_wrapper~12 elements type~serverthreadvectorriterator ServerThreadVectorRIterator type~serverthreadvectorriterator->type~v_wrapper~12 elements

Type-Bound Procedures

procedure, public :: handle

  • private recursive subroutine handle(this, message, rc)

    Arguments

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

procedure, public :: handle_AddReadDataCollection

  • private subroutine handle_AddReadDataCollection(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(AddReadDataCollectionMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_AddWriteDataCollection

  • private subroutine handle_AddWriteDataCollection(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(AddWriteDataCollectionMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_CollectivePrefetchData

  • private subroutine handle_CollectivePrefetchData(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(CollectivePrefetchDataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_CollectiveStageData

  • private subroutine handle_CollectiveStageData(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(CollectiveStageDataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_Done

  • private subroutine handle_Done(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(DoneMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_Done_collective_prefetch

  • private subroutine handle_Done_collective_prefetch(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(CollectivePrefetchDoneMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_Done_collective_stage

  • private subroutine handle_Done_collective_stage(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(CollectiveStageDoneMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_Done_prefetch

  • private subroutine handle_Done_prefetch(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(PrefetchDoneMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_Done_stage

  • private subroutine handle_Done_stage(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(StageDoneMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_HandShake

  • private subroutine handle_HandShake(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(HandShakeMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_Id

  • private subroutine handle_Id(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout) :: this
    type(IDMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_ModifyMetadata

  • private subroutine handle_ModifyMetadata(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(ModifyMetadataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_PrefetchData

  • private subroutine handle_PrefetchData(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(PrefetchDataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_ReplaceMetadata

  • private subroutine handle_ReplaceMetadata(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(ReplaceMetadataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_StageData

  • private subroutine handle_StageData(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(StageDataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

procedure, public :: handle_Terminate

  • private subroutine handle_Terminate(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout) :: this
    type(TerminateMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_Done

  • private subroutine handle_Done(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(DoneMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_Done_prefetch

  • private subroutine handle_Done_prefetch(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(PrefetchDoneMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_Done_collective_prefetch

  • private subroutine handle_Done_collective_prefetch(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(CollectivePrefetchDoneMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_Done_stage

  • private subroutine handle_Done_stage(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(StageDoneMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_Done_collective_stage

  • private subroutine handle_Done_collective_stage(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(CollectiveStageDoneMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_AddReadDataCollection

  • private subroutine handle_AddReadDataCollection(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(AddReadDataCollectionMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_AddWriteDataCollection

  • private subroutine handle_AddWriteDataCollection(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(AddWriteDataCollectionMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_Id

  • private subroutine handle_Id(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(ClientThread), intent(inout) :: this
    type(IDMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_PrefetchData

  • private subroutine handle_PrefetchData(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(PrefetchDataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_CollectivePrefetchData

  • private subroutine handle_CollectivePrefetchData(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(CollectivePrefetchDataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_StageData

  • private subroutine handle_StageData(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(StageDataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_CollectiveStageData

  • private subroutine handle_CollectiveStageData(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(CollectiveStageDataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_Terminate

  • private subroutine handle_Terminate(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout) :: this
    type(TerminateMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_ModifyMetadata

  • private subroutine handle_ModifyMetadata(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(ModifyMetadataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_ReplaceMetadata

  • private subroutine handle_ReplaceMetadata(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(ReplaceMetadataMessage), intent(in) :: message
    integer, intent(out), optional :: rc

generic, public :: handle_cmd => handle_HandShake

  • private subroutine handle_HandShake(this, message, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVisitor), intent(inout), target :: this
    type(HandShakeMessage), intent(in) :: message
    integer, intent(out), optional :: rc

Source Code

   type, abstract, extends(SurrogateMessageVisitor) :: MessageVisitor
   contains
      procedure :: handle

      procedure :: handle_Done
      procedure :: handle_Done_prefetch
      procedure :: handle_Done_collective_prefetch
      procedure :: handle_Done_stage
      procedure :: handle_Done_collective_stage

      procedure :: handle_AddReadDataCollection
      procedure :: handle_AddWriteDataCollection
      procedure :: handle_Id
      procedure :: handle_PrefetchData
      procedure :: handle_StageData
      procedure :: handle_CollectivePrefetchData
      procedure :: handle_CollectiveStageData
      procedure :: handle_Terminate
      procedure :: handle_ModifyMetadata
      procedure :: handle_ReplaceMetadata
      procedure :: handle_HandShake

      generic :: handle_cmd => handle_Done
      generic :: handle_cmd => handle_Done_prefetch
      generic :: handle_cmd => handle_Done_collective_prefetch
      generic :: handle_cmd => handle_Done_stage
      generic :: handle_cmd => handle_Done_collective_stage
      generic :: handle_cmd => handle_AddReadDataCollection
      generic :: handle_cmd => handle_AddWriteDataCollection
      generic :: handle_cmd => handle_Id
      generic :: handle_cmd => handle_PrefetchData
      generic :: handle_cmd => handle_CollectivePrefetchData
      generic :: handle_cmd => handle_StageData
      generic :: handle_cmd => handle_CollectiveStageData
      generic :: handle_cmd => handle_Terminate
      generic :: handle_cmd => handle_ModifyMetadata
      generic :: handle_cmd => handle_ReplaceMetadata
      generic :: handle_cmd => handle_HandShake

   end type MessageVisitor