VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Miniport/vboxioctl.h@ 2487

Last change on this file since 2487 was 1, checked in by vboxsync, 55 years ago

import

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.9 KB
Line 
1/** @file
2 *
3 * VBoxGuest -- VirtualBox Win 2000/XP guest video driver
4 *
5 * Display driver entry points.
6 *
7 * Copyright (C) 2006 InnoTek Systemberatung GmbH
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 as published by the Free Software Foundation,
13 * in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
14 * distribution. VirtualBox OSE is distributed in the hope that it will
15 * be useful, but WITHOUT ANY WARRANTY of any kind.
16 *
17 * If you received this file as part of a commercial VirtualBox
18 * distribution, then only the terms of your commercial VirtualBox
19 * license agreement apply instead of the previous paragraph.
20 *
21 */
22
23#ifndef __VBOXIOCTL__H
24#define __VBOXIOCTL__H
25
26#include <VBox/VBoxGuest.h>
27
28/** Called by the display driver when it is ready to
29 * switch to VBVA operation mode.
30 * Successful return means that VBVA can be used and
31 * output buffer contains VBVAENABLERESULT data.
32 * An error means that VBVA can not be used
33 * (disabled or not supported by the host).
34 */
35#define IOCTL_VIDEO_VBVA_ENABLE \
36 CTL_CODE(FILE_DEVICE_VIDEO, 0x400, METHOD_BUFFERED, FILE_ANY_ACCESS)
37
38#pragma pack(1)
39/**
40 * Data returned by IOCTL_VIDEO_VBVA_ENABLE.
41 *
42 */
43typedef struct _VBVAENABLERESULT
44{
45 /** Pointer to VBVAMemory part of VMMDev memory region. */
46 VBVAMEMORY *pVbvaMemory;
47
48 /** Called to force the host to process VBVA memory,
49 * when there is no more free space in VBVA memory.
50 * Normally this never happens.
51 *
52 * The other purpose is to perform a synchronous command.
53 * But the goal is to have no such commands at all.
54 */
55 DECLCALLBACKMEMBER(void, pfnFlush) (void *pvFlush);
56
57 /** Pointer required by the pfnFlush callback. */
58 void *pvFlush;
59
60} VBVAENABLERESULT;
61#pragma pack()
62
63#endif /* __VBOXIOCTL__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