VirtualBox

source: vbox/trunk/src/VBox/Additions/darwin/VBoxClient/VBoxClientInternal.h

Last change on this file was 106061, checked in by vboxsync, 7 weeks ago

Copyright year updates by scm.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.0 KB
Line 
1/** $Id: VBoxClientInternal.h 106061 2024-09-16 14:03:52Z vboxsync $ */
2/** @file
3 * VBoxClient - common definitions, Darwin.
4 */
5
6/*
7 * Copyright (C) 2007-2024 Oracle and/or its affiliates.
8 *
9 * This file is part of VirtualBox base platform packages, as
10 * available from https://www.virtualbox.org.
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation, in version 3 of the
15 * License.
16 *
17 * This program is distributed in the hope that it will be useful, but
18 * WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 * General Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, see <https://www.gnu.org/licenses>.
24 *
25 * SPDX-License-Identifier: GPL-3.0-only
26 */
27
28#ifndef GA_INCLUDED_SRC_darwin_VBoxClient_VBoxClientInternal_h
29#define GA_INCLUDED_SRC_darwin_VBoxClient_VBoxClientInternal_h
30#ifndef RT_WITHOUT_PRAGMA_ONCE
31# pragma once
32#endif
33
34#include <VBox/VBoxGuestLib.h>
35#include <Carbon/Carbon.h>
36
37/* Service description */
38typedef struct
39{
40 /** The service name. */
41 const char *pszName;
42
43 /**
44 * Start service.
45 * @returns VBox status code.
46 */
47 DECLCALLBACKMEMBER(int, pfnStart,(void));
48
49 /**
50 * Stop service.
51 * @returns VBox status code.
52 */
53 DECLCALLBACKMEMBER(int, pfnStop,(void));
54
55} VBOXCLIENTSERVICE;
56
57
58/*
59 * Services
60 */
61
62RT_C_DECLS_BEGIN
63
64extern VBOXCLIENTSERVICE g_ClipboardService;
65
66RT_C_DECLS_END
67
68
69/*
70 * Functions
71 */
72
73/**
74 * Displays a verbose message.
75 *
76 * @param iLevel Minimum log level required to display this message.
77 * @param pszFormat The message text.
78 * @param ... Format arguments.
79 */
80extern void VBoxClientVerbose(int iLevel, const char *pszFormat, ...);
81
82/**
83 * Walk through pasteboard items and report currently available item types.
84 *
85 * @param pPasteboard Reference to guest Pasteboard.
86 # @returns Available formats bit field.
87 */
88extern uint32_t vbclClipboardGetAvailableFormats(PasteboardRef pPasteboard);
89
90/**
91 * Read host's clipboard buffer and put its content to guest clipboard.
92 *
93 * @param u32ClientId Host connection.
94 * @param pPasteboard Guest PasteBoard reference.
95 * @param fFormats List of data formats (bit field) received from host.
96 *
97 * @returns IPRT status code.
98 */
99extern int vbclClipboardForwardToGuest(uint32_t u32ClientId, PasteboardRef pPasteboard, uint32_t fFormats);
100
101/**
102 * Read guest's clipboard buffer and forward its content to host.
103 *
104 * @param u32ClientId Host clipboard connection.
105 * @param pPasteboard Guest PasteBoard reference.
106 * @param fFormats List of data formats (bit field) received from host.
107 *
108 * @returns IPRT status code.
109 */
110extern int vbclClipboardForwardToHost(uint32_t u32ClientId, PasteboardRef pPasteboard, uint32_t fFormats);
111
112#endif /* !GA_INCLUDED_SRC_darwin_VBoxClient_VBoxClientInternal_h */
Note: See TracBrowser for help on using the repository browser.

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