VirtualBox

source: vbox/trunk/include/VBox/HostServices/VBoxCrOpenGLSvc.h@ 17235

Last change on this file since 17235 was 12806, checked in by vboxsync, 16 years ago

+removed temp buffers usage inside chromium with hgcm
+combined read/writes to reduce number of hgcm calls
+some hacks fixed

  • Property svn:eol-style set to native
File size: 2.8 KB
Line 
1/** @file
2 * OpenGL:
3 * Common header for host service and guest clients.
4 */
5
6/*
7 * Copyright (C) 2006-2007 Sun Microsystems, Inc.
8 *
9 * This file is part of VirtualBox Open Source Edition (OSE), as
10 * available from http://www.virtualbox.org. This file is free software;
11 * you can redistribute it and/or modify it under the terms of the GNU
12 * General Public License (GPL) as published by the Free Software
13 * Foundation, in version 2 as it comes in the "COPYING" file of the
14 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16 *
17 * The contents of this file may alternatively be used under the terms
18 * of the Common Development and Distribution License Version 1.0
19 * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
20 * VirtualBox OSE distribution, in which case the provisions of the
21 * CDDL are applicable instead of those of the GPL.
22 *
23 * You may elect to license modified versions of this file under the
24 * terms and conditions of either the GPL or the CDDL or both.
25 *
26 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
27 * Clara, CA 95054 USA or visit http://www.sun.com if you need
28 * additional information or have any questions.
29 */
30
31#ifndef ___VBox_HostService_VBoxCrOpenGLSvc_h
32#define ___VBox_HostService_VBoxCrOpenGLSvc_h
33
34#include <VBox/types.h>
35#include <VBox/VBoxGuest.h>
36#include <VBox/hgcmsvc.h>
37
38/* crOpenGL host functions */
39#define SHCRGL_HOST_FN_SET_FRAMEBUFFER (1)
40/* crOpenGL guest functions */
41#define SHCRGL_GUEST_FN_WRITE (2)
42#define SHCRGL_GUEST_FN_READ (3)
43#define SHCRGL_GUEST_FN_WRITE_READ (4)
44
45/* Parameters count */
46#define SHCRGL_CPARMS_SET_FRAMEBUFFER (1)
47#define SHCRGL_CPARMS_WRITE (1)
48#define SHCRGL_CPARMS_READ (2)
49#define SHCRGL_CPARMS_WRITE_READ (3)
50
51/**
52 * SHCRGL_GUEST_FN_WRITE
53 */
54
55/** GUEST_FN_WRITE Parameters structure. */
56typedef struct
57{
58 VBoxGuestHGCMCallInfo hdr;
59
60 /** pointer, in
61 * Data buffer
62 */
63 HGCMFunctionParameter pBuffer;
64} CRVBOXHGCMWRITE;
65
66/** GUEST_FN_READ Parameters structure. */
67typedef struct
68{
69 VBoxGuestHGCMCallInfo hdr;
70
71 /** pointer, in/out
72 * Data buffer
73 */
74 HGCMFunctionParameter pBuffer;
75
76 /** 32bit, out
77 * Count of bytes written to buffer
78 */
79 HGCMFunctionParameter cbBuffer;
80
81} CRVBOXHGCMREAD;
82
83/** GUEST_FN_WRITE_READ Parameters structure. */
84typedef struct
85{
86 VBoxGuestHGCMCallInfo hdr;
87
88 /** pointer, in
89 * Data buffer
90 */
91 HGCMFunctionParameter pBuffer;
92
93 /** pointer, out
94 * Writeback buffer
95 */
96 HGCMFunctionParameter pWriteback;
97
98 /** 32bit, out
99 * Count of bytes written to writeback buffer
100 */
101 HGCMFunctionParameter cbWriteback;
102
103} CRVBOXHGCMWRITEREAD;
104
105#endif
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