grub2: bring back build of aros-side grub2 tools
[AROS.git] / workbench / devs / clipboard / clipboard_intern.h
blob7157fdb251cc6be700785a21c973790a49a0a04a
1 #ifndef CLIPBOARD_INTERN_H
2 #define CLIPBOARD_INTERN_H
4 /*
5 Copyright © 1995-2008, The AROS Development Team. All rights reserved.
6 $Id$
7 */
9 #include <exec/types.h>
10 #include <exec/devices.h>
11 #include <exec/semaphores.h>
12 #include <dos/dosextens.h>
13 #include <devices/clipboard.h>
14 #ifndef __MORPHOS__
15 #include <dos/bptr.h>
16 #endif
18 struct ClipboardBase
20 struct Device cb_device;
22 struct SignalSemaphore cb_SignalSemaphore;
23 struct MinList cb_UnitList;
25 struct MinList cb_HookList; /* List of hooks called when data
26 on the clipboard has changed */
28 STRPTR cb_ClipDir; /* CLIPS: or Devs:Clipboards/ */
32 #define CBUN_FILENAMELEN 28
34 struct PostRequest
36 struct MinNode pr_Link;
37 struct Task *pr_Waiter;
40 struct ClipboardUnit
42 struct ClipboardUnitPartial cu_Head; /* MUST be first! */
44 LONG cu_ReadID;
45 LONG cu_WriteID;
46 LONG cu_PostID;
47 UWORD cu_OpenCnt;
48 BPTR cu_clipFile;
49 UBYTE cu_clipFilename[CBUN_FILENAMELEN]; /* CLIPS:un or Devs:Clipboards/un
50 where un is the unit number. */
51 ULONG cu_clipSize;
53 struct SatisfyMsg cu_Satisfy;
54 struct MsgPort *cu_PostPort; /* Port to post message to when a
55 POST needs to be satisfied */
56 struct MinList cu_PostRequesters;
57 struct SignalSemaphore cu_UnitLock;
61 #endif /* CLIPBOARD_INTERN_H */