5 Copyright © 1995-2017, The AROS Development Team. All rights reserved.
8 Desc: Message ports and messages
12 #include <aros/config.h>
15 # include "exec/nodes.h"
18 # include "exec/lists.h"
20 #if defined(__AROSPLATFORM_SMP__)
21 #include <aros/types/spinlock_s.h>
29 UBYTE mp_SigBit
; /* Signal bit number */
30 void * mp_SigTask
; /* Object to be signalled */
31 struct List mp_MsgList
; /* Linked list of messages */
32 #if defined(__AROSPLATFORM_SMP__)
33 #if defined(__AROSEXEC_SMP__)
34 spinlock_t mp_SpinLock
;
41 #define mp_SoftInt mp_SigTask /* Alias */
43 /* mp_Flags: Port arrival actions (PutMsg) */
44 #define PF_ACTION 7 /* Mask */
46 #define PA_SIGNAL 0 /* Signal task in mp_SigTask */
47 #define PA_SOFTINT 1 /* Signal SoftInt in mp_SoftInt/mp_SigTask */
48 #define PA_IGNORE 2 /* Ignore arrival */
50 #define PA_CALL 3 /* Call function in mp_SigTask. This was never
51 documented on AmigaOS and was never defined
52 but would work for mp_Flags == 3 */
58 struct MsgPort
* mn_ReplyPort
; /* message reply port */
59 UWORD mn_Length
; /* total message length, in bytes */
60 /* (include the size of the Message
61 structure in the length) */
64 #endif /* EXEC_PORTS_H */