home *** CD-ROM | disk | FTP | other *** search
/ Amiga Developer CD v1.2 / amidev_cd_12.iso / inc&ad2.0 / includes / exec / ports.h < prev    next >
C/C++ Source or Header  |  1992-09-01  |  1KB  |  58 lines

  1. #ifndef    EXEC_PORTS_H
  2. #define    EXEC_PORTS_H
  3. /*
  4. **    $Filename: exec/ports.h $
  5. **    $Release: 2.04 Includes, V37.4 $
  6. **    $Revision: 36.5 $
  7. **    $Date: 90/05/10 $
  8. **
  9. **    Message ports and Messages.
  10. **
  11. **    (C) Copyright 1985-1991 Commodore-Amiga, Inc.
  12. **        All Rights Reserved
  13. */
  14.  
  15. #ifndef EXEC_NODES_H
  16. #include "exec/nodes.h"
  17. #endif /* EXEC_NODES_H */
  18.  
  19. #ifndef EXEC_LISTS_H
  20. #include "exec/lists.h"
  21. #endif /* EXEC_LISTS_H */
  22.  
  23. #ifndef EXEC_TASKS_H
  24. #include "exec/tasks.h"
  25. #endif /* EXEC_TASKS_H */
  26.  
  27.  
  28. /****** MsgPort *****************************************************/
  29.  
  30. struct MsgPort {
  31.     struct  Node mp_Node;
  32.     UBYTE   mp_Flags;
  33.     UBYTE   mp_SigBit;        /* signal bit number    */
  34.     void   *mp_SigTask;        /* object to be signalled */
  35.     struct  List mp_MsgList;    /* message linked list    */
  36. };
  37.  
  38. #define mp_SoftInt mp_SigTask    /* Alias */
  39.  
  40. /* mp_Flags: Port arrival actions (PutMsg) */
  41. #define PF_ACTION    3    /* Mask */
  42. #define PA_SIGNAL    0    /* Signal task in mp_SigTask */
  43. #define PA_SOFTINT    1    /* Signal SoftInt in mp_SoftInt/mp_SigTask */
  44. #define PA_IGNORE    2    /* Ignore arrival */
  45.  
  46.  
  47. /****** Message *****************************************************/
  48.  
  49. struct Message {
  50.     struct  Node mn_Node;
  51.     struct  MsgPort *mn_ReplyPort;  /* message reply port */
  52.     UWORD   mn_Length;            /* total message length, in bytes */
  53.                     /* (include the size of the Message */
  54.                     /* structure in the length) */
  55. };
  56.  
  57. #endif    /* EXEC_PORTS_H */
  58.