VirtualBox

Changeset 79107 in vbox for trunk/include/VBox/GuestHost


Ignore:
Timestamp:
Jun 12, 2019 1:57:04 PM (6 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
131269
Message:

Shared Clipboard/URI: Update.

Location:
trunk/include/VBox/GuestHost
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/GuestHost/SharedClipboard-uri.h

    r79088 r79107  
    638638
    639639/**
     640 * Structure for handling a single URI object context.
     641 */
     642typedef struct _SHAREDCLIPBOARDCLIENTURIOBJCTX
     643{
     644    /** Pointer to current object being processed. */
     645    SharedClipboardURIObject      *pObj;
     646} SHAREDCLIPBOARDCLIENTURIOBJCTX, *PSHAREDCLIPBOARDCLIENTURIOBJCTX;
     647
     648/**
    640649 * Structure for maintaining a single URI transfer.
    641650 *
     
    654663    /** The transfer's meta data cache. */
    655664    SHAREDCLIPBOARDMETADATA             Meta;
     665    /** The transfer's own (local) area, if any (can be NULL if not needed).
     666     *  The area itself has a clipboard area ID assigned.
     667     *  On the host this area ID gets shared (maintained / locked) across all VMs via VBoxSVC. */
     668    SharedClipboardArea                *pArea;
    656669    /** The URI list for this transfer. */
    657670    SharedClipboardURIList              URIList;
     671    /** Context of current object being handled. */
     672    SHAREDCLIPBOARDCLIENTURIOBJCTX      ObjCtx;
    658673    /** The Shared Clipboard provider in charge for this transfer. */
    659674    SharedClipboardProvider            *pProvider;
     
    681696     *  At the moment we only support only one transfer at a time. */
    682697    uint32_t                    cTransfers;
     698    /** Maximum Number of concurrent transfers.
     699     *  At the moment we only support one transfer at a time (per client). */
     700    uint32_t                    cMaxTransfers;
    683701} SHAREDCLIPBOARDURICTX, *PSHAREDCLIPBOARDURICTX;
     702
     703int SharedClipboardURIObjCtxInit(PSHAREDCLIPBOARDCLIENTURIOBJCTX pObjCtx);
     704void SharedClipboardURIObjCtxUninit(PSHAREDCLIPBOARDCLIENTURIOBJCTX pObjCtx);
     705SharedClipboardURIObject *SharedClipboardURIObjCtxGetObj(PSHAREDCLIPBOARDCLIENTURIOBJCTX pObjCtx);
     706bool SharedClipboardURIObjCtxIsValid(PSHAREDCLIPBOARDCLIENTURIOBJCTX pObjCtx);
    684707
    685708int SharedClipboardURITransferCreate(SHAREDCLIPBOARDURITRANSFERDIR enmDir, PSHAREDCLIPBOARDPROVIDERCREATIONCTX pCtx,
     
    687710int SharedClipboardURITransferDestroy(PSHAREDCLIPBOARDURITRANSFER pTransfer);
    688711void SharedClipboardURITransferReset(PSHAREDCLIPBOARDURITRANSFER pTransfer);
     712SharedClipboardArea *SharedClipboardURITransferGetArea(PSHAREDCLIPBOARDURITRANSFER pTransfer);
    689713const SharedClipboardURIObject *SharedClipboardURITransferGetCurrentObject(PSHAREDCLIPBOARDURITRANSFER pTransfer);
    690714SharedClipboardProvider *SharedClipboardURITransferGetProvider(PSHAREDCLIPBOARDURITRANSFER pTransfer);
    691 const SharedClipboardURIList *SharedClipboardURITransferGetList(PSHAREDCLIPBOARDURITRANSFER pTransfer);
    692 const SharedClipboardURIObject *SharedClipboardURITransferGetObject(PSHAREDCLIPBOARDURITRANSFER pTransfer, uint64_t uIdx);
     715SharedClipboardURIList *SharedClipboardURITransferGetList(PSHAREDCLIPBOARDURITRANSFER pTransfer);
     716SharedClipboardURIObject *SharedClipboardURITransferGetObject(PSHAREDCLIPBOARDURITRANSFER pTransfer, uint64_t uIdx);
    693717int SharedClipboardURITransferRun(PSHAREDCLIPBOARDURITRANSFER pTransfer, bool fAsync);
    694718void SharedClipboardURITransferSetCallbacks(PSHAREDCLIPBOARDURITRANSFER pTransfer, PSHAREDCLIPBOARDURITRANSFERCALLBACKS pCallbacks);
     
    709733PSHAREDCLIPBOARDURITRANSFER SharedClipboardURICtxGetTransfer(PSHAREDCLIPBOARDURICTX pURI, uint32_t uIdx);
    710734uint32_t SharedClipboardURICtxGetActiveTransfers(PSHAREDCLIPBOARDURICTX pURI);
     735bool SharedClipboardURICtxMaximumTransfersReached(PSHAREDCLIPBOARDURICTX pURI);
    711736int SharedClipboardURICtxTransferAdd(PSHAREDCLIPBOARDURICTX pURI, PSHAREDCLIPBOARDURITRANSFER pTransfer);
    712737int SharedClipboardURICtxTransferRemove(PSHAREDCLIPBOARDURICTX pURI, PSHAREDCLIPBOARDURITRANSFER pTransfer);
  • trunk/include/VBox/GuestHost/SharedClipboard.h

    r78581 r79107  
    6262 * The host messages for the guest.
    6363 */
    64 #define VBOX_SHARED_CLIPBOARD_HOST_MSG_QUIT               1
    65 #define VBOX_SHARED_CLIPBOARD_HOST_MSG_READ_DATA          2
    66 #define VBOX_SHARED_CLIPBOARD_HOST_MSG_REPORT_FORMATS     3
     64#define VBOX_SHARED_CLIPBOARD_HOST_MSG_QUIT                   1
     65#define VBOX_SHARED_CLIPBOARD_HOST_MSG_READ_DATA              2
     66#define VBOX_SHARED_CLIPBOARD_HOST_MSG_REPORT_FORMATS         3
     67#ifdef VBOX_WITH_SHARED_CLIPBOARD_URI_LIST
     68#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_READ_DATA_HDR      4
     69#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_WRITE_DATA_HDR     5
     70#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_READ_DATA_CHUNK    6
     71#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_WRITE_DATA_CHUNK   7
     72#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_READ_DIR           8
     73#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_WRITE_DIR          9
     74#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_READ_FILE_HDR      10
     75#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_WRITE_FILE_HDR     11
     76#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_READ_FILE_DATA     12
     77#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_WRITE_FILE_DATA    13
     78#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_CANCEL             14
     79#define VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_ERROR              15
     80#endif /* VBOX_WITH_SHARED_CLIPBOARD_URI_LIST */
    6781
    6882enum
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette