Changeset 82480 in vbox for trunk/include/VBox
- Timestamp:
- Dec 7, 2019 12:32:57 AM (5 years ago)
- svn:sync-xref-src-repo-rev:
- 135332
- Location:
- trunk/include/VBox/GuestHost
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/GuestHost/SharedClipboard-transfers.h
r82478 r82480 42 42 43 43 #include <VBox/GuestHost/SharedClipboard.h> 44 45 46 struct SHCLTRANSFER; 47 /** Pointer to a single shared clipboard transfer */ 48 typedef struct SHCLTRANSFER *PSHCLTRANSFER; 44 49 45 50 … … 713 718 } SHCLTRANSFERSTATE, *PSHCLTRANSFERSTATE; 714 719 715 struct _SHCLTRANSFER;716 typedef struct _SHCLTRANSFER *PSHCLTRANSFER;717 718 720 /** 719 721 * Structure maintaining clipboard transfer provider context data. … … 801 803 } SHCLPROVIDERCREATIONCTX, *PSHCLPROVIDERCREATIONCTX; 802 804 803 struct _SHCLTRANSFER;804 typedef _SHCLTRANSFER *PSHCLTRANSFER;805 805 806 806 /** … … 882 882 883 883 /** 884 * Structure for maintaining asingle Shared Clipboard transfer.884 * A single Shared Clipboard transfer. 885 885 * 886 886 ** @todo Not yet thread safe. 887 887 */ 888 typedef struct _SHCLTRANSFER888 typedef struct SHCLTRANSFER 889 889 { 890 890 /** The node member for using this struct in a RTList. */ -
trunk/include/VBox/GuestHost/SharedClipboard-x11.h
r82266 r82480 54 54 /** Defines an index of the X11 clipboad format table. */ 55 55 typedef unsigned SHCLX11FMTIDX; 56 57 /** Prototype for the implementation-specfic Shared Clipboard context. */58 struct _SHCLCONTEXT;59 typedef SHCLCONTEXT _SHCLCONTEXT;60 56 61 57 /** -
trunk/include/VBox/GuestHost/SharedClipboard.h
r82476 r82480 30 30 #endif 31 31 32 #include <iprt/ cdefs.h>32 #include <iprt/types.h> 33 33 #include <iprt/list.h> 34 #include <iprt/types.h> 35 36 /** 37 * Enumeration specifying an Shared Clipboard transfer direction. 38 */ 39 typedef enum _SHCLTRANSFERDIR 34 35 /** 36 * Shared Clipboard transfer direction. 37 */ 38 typedef enum SHCLTRANSFERDIR 40 39 { 41 40 /** Unknown transfer directory. */ … … 47 46 /** The usual 32-bit hack. */ 48 47 SHCLTRANSFERDIR_32BIT_HACK = 0x7fffffff 49 } SHCLTRANSFERDIR , *PSHCLTRANSFERDIR;50 51 struct _SHCLTRANSFER;52 typedef struct _SHCLTRANSFER SHCLTRANSFER; 48 } SHCLTRANSFERDIR; 49 /** Pointer to a shared clipboard transfer direction. */ 50 typedef SHCLTRANSFERDIR *PSHCLTRANSFERDIR; 51 53 52 54 53 /** A single Shared Clipboard format. */ … … 62 61 typedef SHCLFORMATS *PSHCLFORMATS; 63 62 64 /** 65 * Supported data formats for Shared Clipboard. Bit mask. 63 /** @name VBOX_SHCL_FMT_XXX - Data formats (flags) for Shared Clipboard. 64 * @todo r=bird: Wrong header, belongs in the host service! 65 * @{ 66 66 */ 67 67 /** No format set. */ … … 75 75 #ifdef VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS 76 76 /** Shared Clipboard format is a transfer list. */ 77 # define VBOX_SHCL_FMT_URI_LISTRT_BIT(3)77 # define VBOX_SHCL_FMT_URI_LIST RT_BIT(3) 78 78 #endif 79 80 /** 81 * Structure for keeping a generic Shared Clipboard data block. 82 */ 83 typedef struct _SHCLDATABLOCK 79 /** @} */ 80 81 /** 82 * Generic Shared Clipboard data block. 83 */ 84 typedef struct SHCLDATABLOCK 84 85 { 85 86 /** Clipboard format this data block represents. */ 86 87 SHCLFORMAT uFormat; 88 /** Size (in bytes) of actual data block. */ 89 uint32_t cbData; 87 90 /** Pointer to actual data block. */ 88 91 void *pvData; 89 /** Size (in bytes) of actual data block. */ 90 uint32_t cbData; 91 } SHCLDATABLOCK,*PSHCLDATABLOCK;92 93 /** 94 * S tructure for keeping a Shared Clipboard data read request.95 */ 96 typedef struct _SHCLDATAREQ92 } SHCLDATABLOCK; 93 /** Pointer to a generic shared clipboard data block. */ 94 typedef SHCLDATABLOCK *PSHCLDATABLOCK; 95 96 /** 97 * Shared Clipboard data read request. 98 */ 99 typedef struct SHCLDATAREQ 97 100 { 98 101 /** In which format the data needs to be sent. */ … … 102 105 /** Maximum data (in byte) can be sent. */ 103 106 uint32_t cbSize; 104 } SHCLDATAREQ, *PSHCLDATAREQ; 105 106 /** 107 * Structure for keeping Shared Clipboard formats specifications. 108 */ 109 typedef struct _SHCLFORMATDATA 107 } SHCLDATAREQ; 108 /** Pointer to a shared clipboard data request. */ 109 typedef SHCLDATAREQ *PSHCLDATAREQ; 110 111 /** 112 * Shared Clipboard formats specification. 113 */ 114 typedef struct SHCLFORMATDATA 110 115 { 111 116 /** Available format(s) as bit map. */ … … 113 118 /** Formats flags. Currently unused. */ 114 119 uint32_t fFlags; 115 } SHCLFORMATDATA, *PSHCLFORMATDATA; 116 117 /** 118 * Structure for an (optional) Shared Clipboard event payload. 119 */ 120 typedef struct _SHCLEVENTPAYLOAD 120 } SHCLFORMATDATA; 121 /** Pointer to a shared clipboard formats specification. */ 122 typedef SHCLFORMATDATA *PSHCLFORMATDATA; 123 124 /** 125 * Shared Clipboard event payload (optional). 126 */ 127 typedef struct SHCLEVENTPAYLOAD 121 128 { 122 129 /** Payload ID; currently unused. */ … … 126 133 /** Pointer to actual payload data. */ 127 134 void *pvData; 128 } SHCLEVENTPAYLOAD, *PSHCLEVENTPAYLOAD; 129 130 /** Defines an event source ID. */ 135 } SHCLEVENTPAYLOAD; 136 /** Pointer to a shared clipboard event payload. */ 137 typedef SHCLEVENTPAYLOAD *PSHCLEVENTPAYLOAD; 138 139 /** A shared clipboard event source ID. */ 131 140 typedef uint16_t SHCLEVENTSOURCEID; 132 /** Defines a pointer to aevent source ID. */141 /** Pointer to a shared clipboard event source ID. */ 133 142 typedef SHCLEVENTSOURCEID *PSHCLEVENTSOURCEID; 134 143 135 /** Defines asession ID. */136 typedef uint16_t SHCLSESSIONID;137 /** Defines a pointer to asession ID. */138 typedef SHCLSESSIONID *PSHCLSESSIONID;139 /** Defines a NILsession ID. */144 /** A shared clipboard session ID. */ 145 typedef uint16_t SHCLSESSIONID; 146 /** Pointer to a shared clipboard session ID. */ 147 typedef SHCLSESSIONID *PSHCLSESSIONID; 148 /** NIL shared clipboard session ID. */ 140 149 #define NIL_SHCLSESSIONID UINT16_MAX 141 150 142 /** Defines atransfer ID. */143 typedef uint16_t SHCLTRANSFERID;144 /** Defines a pointer to atransfer ID. */151 /** A shared clipboard transfer ID. */ 152 typedef uint16_t SHCLTRANSFERID; 153 /** Pointer to a shared clipboard transfer ID. */ 145 154 typedef SHCLTRANSFERID *PSHCLTRANSFERID; 146 /** Defines a NILtransfer ID. */155 /** NIL shared clipboardtransfer ID. */ 147 156 #define NIL_SHCLTRANSFERID UINT16_MAX 148 157 149 /** Defines anevent ID. */150 typedef uint32_t SHCLEVENTID;151 /** Defines a pointer to aevent source ID. */152 typedef SHCLEVENTID *PSHCLEVENTID;153 /** Defines a NILevent ID. */158 /** A shared clipboard event ID. */ 159 typedef uint32_t SHCLEVENTID; 160 /** Pointer to a shared clipboard event source ID. */ 161 typedef SHCLEVENTID *PSHCLEVENTID; 162 /** NIL shared clipboard event ID. */ 154 163 #define NIL_SHCLEVENTID UINT32_MAX 155 164 156 165 /** Maximum number of concurrent Shared Clipboard client sessions a VM can have. */ 157 166 #define VBOX_SHCL_MAX_SESSIONS (UINT16_MAX - 1) 158 /** Maximum number of concurrent Shared Clipboard transfers a single 159 * client can have. */ 167 /** Maximum number of concurrent Shared Clipboard transfers a single client can have. */ 160 168 #define VBOX_SHCL_MAX_TRANSFERS (UINT16_MAX - 1) 161 169 /** Maximum number of events a single Shared Clipboard transfer can have. */ … … 163 171 164 172 /** 165 * Creates a context ID out of a client ID, a transfer ID and a count (can be an event ID).173 * Creates a context ID out of a client ID, a transfer ID and an event ID (count). 166 174 */ 167 175 #define VBOX_SHCL_CONTEXTID_MAKE(a_idSession, a_idTransfer, a_idEvent) \ … … 182 190 * Shared Clipboard event. 183 191 */ 184 typedef struct _SHCLEVENT192 typedef struct SHCLEVENT 185 193 { 186 194 /** List node. */ 187 RTLISTNODE Node;195 RTLISTNODE Node; 188 196 /** The event's ID, for self-reference. */ 189 SHCLEVENTID uID;197 SHCLEVENTID uID; 190 198 /** Event semaphore for signalling the event. */ 191 RTSEMEVENT hEventSem; 192 /** Payload to this event. Optional and can be NULL. */ 193 PSHCLEVENTPAYLOAD pPayload; 194 } SHCLEVENT, *PSHCLEVENT; 199 RTSEMEVENT hEventSem; 200 /** Payload to this event, optional (NULL). */ 201 PSHCLEVENTPAYLOAD pPayload; 202 } SHCLEVENT; 203 /** Pointer to a shared clipboard event. */ 204 typedef SHCLEVENT *PSHCLEVENT; 195 205 196 206 /** … … 208 218 /** List of events (PSHCLEVENT). */ 209 219 RTLISTANCHOR lstEvents; 210 } SHCLEVENTSOURCE, *PSHCLEVENTSOURCE; 220 } SHCLEVENTSOURCE; 221 /** Pointer to a shared clipboard event source. */ 222 typedef SHCLEVENTSOURCE *PSHCLEVENTSOURCE; 211 223 212 224 /** @name Shared Clipboard data payload functions. … … 252 264 } SHCLSOURCE; 253 265 254 /** Opaque data structure for the X11/VBox frontend/glue code. */ 255 struct _SHCLCONTEXT; 256 typedef struct _SHCLCONTEXT SHCLCONTEXT; 257 typedef struct _SHCLCONTEXT *PSHCLCONTEXT; 266 /** Opaque data structure for the X11/VBox frontend/glue code. 267 * @{ */ 268 struct SHCLCONTEXT; 269 typedef struct SHCLCONTEXT SHCLCONTEXT; 270 /** @} */ 271 /** Pointer to opaque data structure the X11/VBox frontend/glue code. */ 272 typedef SHCLCONTEXT *PSHCLCONTEXT; 258 273 259 274 /** Opaque request structure for X11 clipboard data. 260 * @todo All use of single and double underscore prefixes is banned! */ 261 struct _CLIPREADCBREQ; 262 typedef struct _CLIPREADCBREQ CLIPREADCBREQ; 275 * @{ */ 276 struct CLIPREADCBREQ; 277 typedef struct CLIPREADCBREQ CLIPREADCBREQ; 278 /** @} */ 263 279 264 280 #endif /* !VBOX_INCLUDED_GuestHost_SharedClipboard_h */
Note:
See TracChangeset
for help on using the changeset viewer.