
open_receiver_init(+SendPos, +SendStruct, +InitialMessages, -InitialMessagesTail, +ReceivePos, +ReceiveStruct)

   Create a receiver for a given notification sender

Arguments
   SendPos             positive integer, the send port's field number in SendStruct
   SendStruct          a structure whose SendPos-th field is a send port
   InitialMessages     the head of a list of initial messages
   InitialMessagesTail the tail of the list of initial messages
   ReceivePos          positive integer, the send port's field number in ReceiveStruct
   ReceiveStruct       a structure with free field ReceivePos

Type
   library(notify_ports)

Description

    SendPos and SendStruct identify a send port.  This predicate
    creates a receive port listening to messages sent via the
    specified send port.  The new receive port will receive all
    messages that are sent via the send port after the receiver has
    been opened.  Messages that were sent before the receiver has been
    opened will not be received by this receiver.
    
    The receiver will be installed in field ReceivePos of the structure
    ReceiveStruct.
    
    In addition to open_receiver/4, there is a difference list pair
    (InitialMessages and InitialMessagesTail) which can be used to
    fake a sequence of initial message that will be received on
    the receive port without actually having been sent from the
    associated send port. This feature can be used to bring the
    message receiving agent into a particular starting state.
    

See Also
   open_receiver / 4
