VirtualBox

source: vbox/trunk/src/VBox/Devices/Graphics/DevVGA-SVGA3d-cocoa.h@ 58539

Last change on this file since 58539 was 57790, checked in by vboxsync, 9 years ago

VMSVGA3d: Turns out I'm blitting to the wrong end (Y direction) of the nsview framebuffer. Missed some [NSOpenGLContext update] calls when the parent view got resized, so it sometimes worked, but not all the time. After calling update, the visible part of the framebuffer is the bottom half, not the top half as I though and as seems to be the case on the other plaforms.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.2 KB
Line 
1/* $Id: DevVGA-SVGA3d-cocoa.h 57790 2015-09-16 17:09:28Z vboxsync $ */
2/** @file
3 * VirtualBox OpenGL Cocoa Window System Helper Implementation.
4 */
5
6/*
7 * Copyright (C) 2014-2015 Oracle Corporation
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
18#ifndef __DevVGA_SVGA3d_cocoa_h
19#define __DevVGA_SVGA3d_cocoa_h
20
21#include <VBox/types.h>
22#include <VBox/VBoxCocoa.h>
23
24RT_C_DECLS_BEGIN
25
26#ifndef ___renderspu_cocoa_helper_h
27ADD_COCOA_NATIVE_REF(NSView);
28ADD_COCOA_NATIVE_REF(NSOpenGLContext);
29#endif
30
31#ifdef IN_VMSVGA3DCOCOA
32# define VMSVGA3DCOCOA_DECL(type) DECLEXPORT(type)
33#else
34# define VMSVGA3DCOCOA_DECL(type) DECLIMPORT(type)
35#endif
36
37VMSVGA3DCOCOA_DECL(void) vmsvga3dCocoaServiceRunLoop(void);
38VMSVGA3DCOCOA_DECL(bool) vmsvga3dCocoaCreateViewAndContext(NativeNSViewRef *ppView, NativeNSOpenGLContextRef *ppCtx,
39 NativeNSViewRef pParentView, uint32_t cx, uint32_t cy,
40 NativeNSOpenGLContextRef pSharedCtx, bool fOtherProfile);
41VMSVGA3DCOCOA_DECL(void) vmsvga3dCocoaDestroyViewAndContext(NativeNSViewRef pView, NativeNSOpenGLContextRef pCtx);
42VMSVGA3DCOCOA_DECL(void) vmsvga3dCocoaViewInfo(PCDBGFINFOHLP pHlp, NativeNSViewRef pView);
43VMSVGA3DCOCOA_DECL(void) vmsvga3dCocoaViewSetPosition(NativeNSViewRef pView, NativeNSViewRef pParentView, int x, int y);
44VMSVGA3DCOCOA_DECL(void) vmsvga3dCocoaViewSetSize(NativeNSViewRef pView, int w, int h);
45VMSVGA3DCOCOA_DECL(void) vmsvga3dCocoaViewUpdateViewport(NativeNSViewRef pView);
46VMSVGA3DCOCOA_DECL(void) vmsvga3dCocoaViewMakeCurrentContext(NativeNSViewRef pView, NativeNSOpenGLContextRef pCtx);
47VMSVGA3DCOCOA_DECL(void) vmsvga3dCocoaSwapBuffers(NativeNSViewRef pView, NativeNSOpenGLContextRef pCtx);
48
49int ExplicitlyLoadVBoxSVGA3DObjC(bool fResolveAllImports, PRTERRINFO pErrInfo);
50
51RT_C_DECLS_END
52
53#endif /* !__DevVGA_SVGA3d_cocoa_h */
54
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