Commit | Line | Data |
---|---|---|
632f6117 JB |
1 | /********************************************************** |
2 | * Copyright 2007-2009 VMware, Inc. All rights reserved. | |
3 | * | |
4 | * Permission is hereby granted, free of charge, to any person | |
5 | * obtaining a copy of this software and associated documentation | |
6 | * files (the "Software"), to deal in the Software without | |
7 | * restriction, including without limitation the rights to use, copy, | |
8 | * modify, merge, publish, distribute, sublicense, and/or sell copies | |
9 | * of the Software, and to permit persons to whom the Software is | |
10 | * furnished to do so, subject to the following conditions: | |
11 | * | |
12 | * The above copyright notice and this permission notice shall be | |
13 | * included in all copies or substantial portions of the Software. | |
14 | * | |
15 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | |
16 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | |
17 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | |
18 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS | |
19 | * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN | |
20 | * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | |
21 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | |
22 | * SOFTWARE. | |
23 | * | |
24 | **********************************************************/ | |
25 | ||
26 | /* | |
27 | * svga_escape.h -- | |
28 | * | |
29 | * Definitions for our own (vendor-specific) SVGA Escape commands. | |
30 | */ | |
31 | ||
32 | #ifndef _SVGA_ESCAPE_H_ | |
33 | #define _SVGA_ESCAPE_H_ | |
34 | ||
35 | ||
36 | /* | |
37 | * Namespace IDs for the escape command | |
38 | */ | |
39 | ||
40 | #define SVGA_ESCAPE_NSID_VMWARE 0x00000000 | |
41 | #define SVGA_ESCAPE_NSID_DEVEL 0xFFFFFFFF | |
42 | ||
43 | ||
44 | /* | |
45 | * Within SVGA_ESCAPE_NSID_VMWARE, we multiplex commands according to | |
46 | * the first DWORD of escape data (after the nsID and size). As a | |
47 | * guideline we're using the high word and low word as a major and | |
48 | * minor command number, respectively. | |
49 | * | |
50 | * Major command number allocation: | |
51 | * | |
52 | * 0000: Reserved | |
53 | * 0001: SVGA_ESCAPE_VMWARE_LOG (svga_binary_logger.h) | |
54 | * 0002: SVGA_ESCAPE_VMWARE_VIDEO (svga_overlay.h) | |
55 | * 0003: SVGA_ESCAPE_VMWARE_HINT (svga_escape.h) | |
56 | */ | |
57 | ||
58 | #define SVGA_ESCAPE_VMWARE_MAJOR_MASK 0xFFFF0000 | |
59 | ||
60 | ||
61 | /* | |
62 | * SVGA Hint commands. | |
63 | * | |
64 | * These escapes let the SVGA driver provide optional information to | |
65 | * he host about the state of the guest or guest applications. The | |
66 | * host can use these hints to make user interface or performance | |
67 | * decisions. | |
68 | * | |
69 | * Notes: | |
70 | * | |
71 | * - SVGA_ESCAPE_VMWARE_HINT_FULLSCREEN is deprecated for guests | |
72 | * that use the SVGA Screen Object extension. Instead of sending | |
73 | * this escape, use the SVGA_SCREEN_FULLSCREEN_HINT flag on your | |
74 | * Screen Object. | |
75 | */ | |
76 | ||
77 | #define SVGA_ESCAPE_VMWARE_HINT 0x00030000 | |
8d3713ea | 78 | #define SVGA_ESCAPE_VMWARE_HINT_FULLSCREEN 0x00030001 /* Deprecated */ |
632f6117 JB |
79 | |
80 | typedef | |
81 | struct { | |
82 | uint32 command; | |
83 | uint32 fullscreen; | |
84 | struct { | |
85 | int32 x, y; | |
86 | } monitorPosition; | |
87 | } SVGAEscapeHintFullscreen; | |
88 | ||
89 | #endif /* _SVGA_ESCAPE_H_ */ |