VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/VBoxDispMp.h@ 46757

Last change on this file since 46757 was 46757, checked in by vboxsync, 12 years ago

wddm/crOpenGL: r0-based visible regions handling, r0-based chromium commands submission debugged, more on new presentation mechanism, cleanup, etc.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.8 KB
Line 
1/* $Id: VBoxDispMp.h 46757 2013-06-24 14:30:18Z vboxsync $ */
2
3/** @file
4 * VBoxVideo Display external interface
5 */
6
7/*
8 * Copyright (C) 2010-2012 Oracle Corporation
9 *
10 * This file is part of VirtualBox Open Source Edition (OSE), as
11 * available from http://www.virtualbox.org. This file is free software;
12 * you can redistribute it and/or modify it under the terms of the GNU
13 * General Public License (GPL) as published by the Free Software
14 * Foundation, in version 2 as it comes in the "COPYING" file of the
15 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
16 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
17 */
18
19#ifndef ___VBoxDispMp_h___
20#define ___VBoxDispMp_h___
21
22#include <windows.h>
23#include <d3d9types.h>
24#include <D3dumddi.h>
25#include <d3dhal.h>
26#include "../../common/wddm/VBoxMPIf.h"
27
28#if 0
29typedef struct VBOXDISPMP_REGIONS
30{
31 HWND hWnd;
32 PVBOXVIDEOCM_CMD_RECTS pRegions;
33} VBOXDISPMP_REGIONS, *PVBOXDISPMP_REGIONS;
34
35typedef DECLCALLBACK(HRESULT) FNVBOXDISPMP_ENABLEEVENTS();
36typedef FNVBOXDISPMP_ENABLEEVENTS *PFNVBOXDISPMP_ENABLEEVENTS;
37
38typedef DECLCALLBACK(HRESULT) FNVBOXDISPMP_DISABLEEVENTS();
39typedef FNVBOXDISPMP_DISABLEEVENTS *PFNVBOXDISPMP_DISABLEEVENTS;
40
41typedef DECLCALLBACK(HRESULT) FNVBOXDISPMP_DISABLEEVENTS();
42typedef FNVBOXDISPMP_DISABLEEVENTS *PFNVBOXDISPMP_DISABLEEVENTS;
43
44typedef DECLCALLBACK(HRESULT) FNVBOXDISPMP_GETREGIONS(PVBOXDISPMP_REGIONS pRegions, DWORD dwMilliseconds);
45typedef FNVBOXDISPMP_GETREGIONS *PFNVBOXDISPMP_GETREGIONS;
46
47typedef DECLCALLBACK(void) FNVBOXDISPMP_LOG(LPCSTR pszMsg);
48typedef FNVBOXDISPMP_LOG *PFNVBOXDISPMP_LOG;
49
50
51typedef struct VBOXDISPMP_CALLBACKS
52{
53 PFNVBOXDISPMP_ENABLEEVENTS pfnEnableEvents;
54 PFNVBOXDISPMP_DISABLEEVENTS pfnDisableEvents;
55 /**
56 * if events are enabled - blocks until dirty region is available or timeout occurs
57 * in the former case S_OK is returned on event, in the latter case WAIT_TIMEOUT is returned
58 * if events are disabled - returns S_FALSE
59 */
60 PFNVBOXDISPMP_GETREGIONS pfnGetRegions;
61} VBOXDISPMP_CALLBACKS, *PVBOXDISPMP_CALLBACKS;
62
63/** @def VBOXNETCFGWIN_DECL
64 * The usual declaration wrapper.
65 */
66
67/* enable this in case we include this in a dll*/
68# ifdef VBOXWDDMDISP
69# define VBOXDISPMP_DECL(_type) DECLEXPORT(_type) VBOXCALL
70# else
71# define VBOXDISPMP_DECL(_type) DECLIMPORT(_type) VBOXCALL
72# endif
73
74#define VBOXDISPMP_IFVERSION 3
75#define VBOXDISPMP_VERSION (VBOXVIDEOIF_VERSION | (VBOXDISPMP_IFVERSION < 16))
76/**
77 * VBoxDispMpGetCallbacks export
78 *
79 * @param u32Version - must be set to VBOXDISPMP_VERSION
80 * @param pCallbacks - callbacks structure
81 */
82typedef VBOXDISPMP_DECL(HRESULT) FNVBOXDISPMP_GETCALLBACKS(uint32_t u32Version, PVBOXDISPMP_CALLBACKS pCallbacks);
83typedef FNVBOXDISPMP_GETCALLBACKS *PFNVBOXDISPMP_GETCALLBACKS;
84#endif /* 0 */
85#endif /* #ifndef ___VBoxDispMp_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