IRMPService
Methods and properties of the interface IRMPService
.
Method: IsMessageSent
METHOD IsMessageSent : BOOL VAR_INPUT uiHandle: UINT; END_VAR
This method checks if a message that has been queued with QueueSendMessage
has been sent and acknowledged. uiHandle
is the handle returned by QueueSendMessage
. For this check the use of the function block RMPSendMessage is recommended, because it provides a standardized command interface.
Method: QueueSendMessage
METHOD QueueSendMessage : UINT VAR_INPUT udiSenderID: UDINT; udiReceiverID: UDINT; tValidity: TIME; pmdData: POINTER TO ARRAY[0..63] OF BYTE; END_VAR
This method adds a message to send into the send queue and returns a handle. This handle can be used to check if the transmission was successful.
A return value of 16#FFFF
indicates that the buffer is full and the message was not transmitted. A return value of 16#FFFE
indicates that the receiver module is in the same application and that the transmission was successful.
To add a message to the send queue the use of the function block RMPSendMessage is recommended, because it provides a standardized command interface.
Method: Receive
METHOD Receive : UDINT VAR_INPUT uiReceiverModuleID: UINT; pmd: POINTER TO ARRAY[0..63] OF BYTE; END_VAR
This method is called by each module that is able to receive a message. It takes the oldest received message for uiReceiverID
and acknowledges it. If a message is not available, then 16#FFFFFFFF
is returned. It returns 16#FFFFFFFE
if there is at least one message waiting for the receiver, if the oldest message is currently locked by a different task. In all other cases, the communication address of the sender is returned.
Property: LocalAppID
PROPERTY LocalAppID : UINT (get)
This property describes the address of the local application. (The high-word of the communication ID of module instances of this application.)