mvm_gui_get_messageT_mvm_gui_get_messageMvmGuiGetMessageMvmGuiGetMessage (Operator)

Name

mvm_gui_get_messageT_mvm_gui_get_messageMvmGuiGetMessageMvmGuiGetMessage — Receive a message from the message loop of a server.

Warning

Is no message is received, this operator blocks forever. Usage of mvm_gui_try_get_messagemvm_gui_try_get_messageMvmGuiTryGetMessageMvmGuiTryGetMessageMvmGuiTryGetMessage is recommended instead.

Signature

mvm_gui_get_message( : PayloadObject : ServerHandle : ConnectionHandle, Id, PayloadClass, PayloadTuple)

Herror T_mvm_gui_get_message(Hobject* PayloadObject, const Htuple ServerHandle, Htuple* ConnectionHandle, Htuple* Id, Htuple* PayloadClass, Htuple* PayloadTuple)

void MvmGuiGetMessage(HObject* PayloadObject, const HTuple& ServerHandle, HTuple* ConnectionHandle, HTuple* Id, HTuple* PayloadClass, HTuple* PayloadTuple)

static void HHdevguiServerExtpack.MvmGuiGetMessage(out HObject payloadObject, HTuple serverHandle, out HTuple connectionHandle, out HTuple id, out HTuple payloadClass, out HTuple payloadTuple)

Description

Receive a message from the message loop of a server. The call will block until a message from the server is available. In error cases, an empty ConnectionHandleConnectionHandleConnectionHandleConnectionHandleconnectionHandle and empty IdIdIdIdid will be returned. If a payload is attached to this message (see parameter PayloadClassPayloadClassPayloadClassPayloadClasspayloadClass), the payload is returned in PayloadObjectPayloadObjectPayloadObjectPayloadObjectpayloadObject or PayloadTuplePayloadTuplePayloadTuplePayloadTuplepayloadTuple.

Returned tuples in PayloadTuplePayloadTuplePayloadTuplePayloadTuplepayloadTuple may be an empty array or an array containing only integers, floats, or strings. Especially, the sender is not allowed to send for example null, an array of arrays or undefined values.

Execution Information

This operator returns a handle. Note that the state of an instance of this handle type may be changed by specific operators even though the handle is used as an input parameter by those operators.

This operator modifies the state of the following input parameter:

The value of this parameter may not be shared across multiple threads without external synchronization.

Parameters

PayloadObjectPayloadObjectPayloadObjectPayloadObjectpayloadObject (output_object)  image(-array) objectHObjectHObjectHobject *

object payload if PayloadClass is 'image', 'region', 'xld_cont', 'xld_poly', or 'xld_parallel'

ServerHandleServerHandleServerHandleServerHandleserverHandle (input_control, state is modified)  serial HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

GUI server handle

ConnectionHandleConnectionHandleConnectionHandleConnectionHandleconnectionHandle (output_control)  socket HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

the connection handle corresponding to the message. Might be empty if an error occurred.

IdIdIdIdid (output_control)  proc_name HTupleHTupleHtuple (string) (string) (HString) (char*)

a GUI Id. Predefined messages start with __.

PayloadClassPayloadClassPayloadClassPayloadClasspayloadClass (output_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

class of the attached payload. May be 'none', 'tuple', 'image', 'region', 'xld_cont', 'xld_poly', or 'xld_parallel'

PayloadTuplePayloadTuplePayloadTuplePayloadTuplepayloadTuple (output_control)  integer(-array) HTupleHTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)

tuple payload if PayloadClass is 'tuple'

See also

mvm_gui_try_get_messagemvm_gui_try_get_messageMvmGuiTryGetMessageMvmGuiTryGetMessageMvmGuiTryGetMessage, mvm_gui_get_uimvm_gui_get_uiMvmGuiGetUiMvmGuiGetUiMvmGuiGetUi

Module

Foundation