[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]

As mentioned earlier, a message contains both system header information
and the actual message content.  The system header is of the Message form
defined in <exec/ports.h> and <exec/ports.i>.  In C this structure is as

    struct Message {
        struct Node     mn_Node;
        struct MsgPort *mn_ReplyPort;
        UWORD           mn_Length;

    is a standard Node structure used for port linkage.

    is used to indicate a port to which this message will be returned
    when a reply is necessary.

    indicates the total length of the message, including the Message
    structure itself.

This structure is always attached to the head of all messages.  For
example, if you want a message structure that contains the x and y
coordinates of a point on the screen, you could define it as follows:

    struct XYMessage {
        struct Message xy_Msg;
        UWORD          xy_X;
        UWORD          xy_Y;

For this structure, the mn_Length field should be set to sizeof(struct

 Putting a Message        Getting a Message 
 Waiting For a Message    Replying