home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / at-inc-bin.lha / os-include / devices / clipboard.h < prev    next >
C/C++ Source or Header  |  1993-10-15  |  2KB  |  71 lines

  1. #ifndef     DEVICES_CLIPBOARD_H
  2. #define     DEVICES_CLIPBOARD_H
  3. /*
  4. **    $VER: clipboard.h 36.5 (2.11.90)
  5. **    Includes Release 40.15
  6. **
  7. **    clipboard.device structure definitions
  8. **
  9. **    (C) Copyright 1985-1993 Commodore-Amiga, Inc.
  10. **        All Rights Reserved
  11. */
  12.  
  13. #ifndef    EXEC_TYPES_H
  14. #include    "exec/types.h"
  15. #endif
  16. #ifndef    EXEC_NODES_H
  17. #include    "exec/nodes.h"
  18. #endif
  19. #ifndef    EXEC_LISTS_H
  20. #include    "exec/lists.h"
  21. #endif
  22. #ifndef    EXEC_PORTS_H
  23. #include    "exec/ports.h"
  24. #endif
  25.  
  26. #define    CBD_POST        (CMD_NONSTD+0)
  27. #define    CBD_CURRENTREADID    (CMD_NONSTD+1)
  28. #define    CBD_CURRENTWRITEID    (CMD_NONSTD+2)
  29. #define    CBD_CHANGEHOOK        (CMD_NONSTD+3)
  30.  
  31. #define    CBERR_OBSOLETEID    1
  32.  
  33.  
  34. struct ClipboardUnitPartial {
  35.     struct  Node cu_Node;    /* list of units */
  36.     ULONG   cu_UnitNum;        /* unit number for this unit */
  37.     /* the remaining unit data is private to the device */
  38. };
  39.  
  40.  
  41. struct IOClipReq {
  42.     struct Message io_Message;
  43.     struct Device *io_Device;    /* device node pointer    */
  44.     struct ClipboardUnitPartial *io_Unit; /* unit node pointer */
  45.     UWORD   io_Command;        /* device command */
  46.     UBYTE   io_Flags;        /* including QUICK and SATISFY */
  47.     BYTE    io_Error;        /* error or warning num */
  48.     ULONG   io_Actual;        /* number of bytes transferred */
  49.     ULONG   io_Length;        /* number of bytes requested */
  50.     STRPTR  io_Data;        /* either clip stream or post port */
  51.     ULONG   io_Offset;        /* offset in clip stream */
  52.     LONG    io_ClipID;        /* ordinal clip identifier */
  53. };
  54.  
  55. #define    PRIMARY_CLIP    0    /* primary clip unit */
  56.  
  57. struct SatisfyMsg {
  58.     struct Message sm_Msg;    /* the length will be 6 */
  59.     UWORD   sm_Unit;        /* which clip unit this is */
  60.     LONG    sm_ClipID;        /* the clip identifier of the post */
  61. };
  62.  
  63. struct ClipHookMsg {
  64.     ULONG   chm_Type;        /* zero for this structure format */
  65.     LONG    chm_ChangeCmd;    /* command that caused this hook invocation: */
  66.                 /*   either CMD_UPDATE or CBD_POST */
  67.     LONG    chm_ClipID;        /* the clip identifier of the new data */
  68. };
  69.  
  70. #endif    /* DEVICES_CLIPBOARD_H */
  71.