home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 15 / 15.iso / s / s053 / 8.ddi / usr / include / sys / que.h < prev    next >
Encoding:
C/C++ Source or Header  |  1990-12-08  |  1.3 KB  |  64 lines

  1. /*    Copyright (c) 1990 UNIX System Laboratories, Inc.    */
  2. /*    Copyright (c) 1984, 1986, 1987, 1988, 1989, 1990 AT&T    */
  3. /*      All Rights Reserved      */
  4.  
  5. /*    THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF         */
  6. /*    UNIX System Laboratories, Inc.                         */
  7. /*    The copyright notice above does not evidence any       */
  8. /*    actual or intended publication of such source code.    */
  9.  
  10.  
  11. #ident    "@(#)/usr/include/sys/que.h.sl 1.1 4.0 12/08/90 34946 AT&T-USL"
  12.  
  13. /*********************************************************************
  14.  
  15.     following structures declares the data structures used for
  16.     queue manipulation.
  17.  
  18. *********************************************************************/
  19.  
  20. /*****
  21.  
  22.     Queues consist simply of one-way list.  Each queue is
  23.     defined by a 'queue control element' made up of head
  24.     and tail pointers.  Each item held on a queue contains
  25.     a pointer word used to link successive item together.
  26.     The head pointer contains the address of the first
  27.     item in the queue and the tail pointer contains the
  28.     address of the last item.
  29.  
  30. *****/
  31.  
  32.  
  33.  
  34. /*
  35.  *    Queue Item
  36.  */
  37.  
  38. #define    QITEM    struct qitem_st
  39.  
  40. struct    qitem_st
  41.     {
  42.     QITEM    *qi_next;    /* next queue item pointer */
  43.     char    data[1];    /* data */
  44.     };
  45.  
  46.  
  47.  
  48. /*
  49.  *    Queue Control Element
  50.  */
  51.  
  52. #define    QCTRL    struct qctrl_st
  53.  
  54. struct    qctrl_st
  55.     {
  56.     QITEM    *qc_head;        /* head pointer */
  57.     QITEM    *qc_tail;        /* tail pointer */
  58.     };
  59.  
  60.  
  61.  
  62.  
  63.  
  64.