]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkUnixPkg/Include/Protocol/UnixUgaIo.h
Unix version of EFI emulator
[mirror_edk2.git] / EdkUnixPkg / Include / Protocol / UnixUgaIo.h
diff --git a/EdkUnixPkg/Include/Protocol/UnixUgaIo.h b/EdkUnixPkg/Include/Protocol/UnixUgaIo.h
new file mode 100644 (file)
index 0000000..4ec0bb9
--- /dev/null
@@ -0,0 +1,72 @@
+/*++\r
+\r
+Copyright (c) 2006, Tristan Gingold\r
+All rights reserved. This program and the accompanying materials\r
+are licensed and made available under the terms and conditions of the\r
+BSD License which accompanies this distribution.  The full text of the\r
+license may be found at http://opensource.org/licenses/bsd-license.php\r
+\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+Module Name:\r
+\r
+  UnixUgaIo.h\r
+\r
+Abstract:\r
+\r
+--*/\r
+\r
+#ifndef _UNIX_UGA_IO_H_\r
+#define _UNIX_UGA_IO_H_\r
+\r
+#define EFI_UNIX_UGA_IO_PROTOCOL_GUID \\r
+  { \\r
+    0xf2e5e2c6, 0x8985, 0x11db, {0xa1, 0x91, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
+  }\r
+\r
+struct _EFI_UNIX_UGA_IO_PROTOCOL;
+typedef struct _EFI_UNIX_UGA_IO_PROTOCOL EFI_UNIX_UGA_IO_PROTOCOL;\r
+
+typedef
+EFI_STATUS
+(*UGAClose)(EFI_UNIX_UGA_IO_PROTOCOL *Uga);
+
+typedef
+EFI_STATUS
+(*UGASize)(EFI_UNIX_UGA_IO_PROTOCOL *Uga, UINT32 Width, UINT32 Height);
+
+typedef
+EFI_STATUS
+(*UGACheckKey)(EFI_UNIX_UGA_IO_PROTOCOL *Uga);
+
+typedef
+EFI_STATUS
+(*UGAGetKey)(EFI_UNIX_UGA_IO_PROTOCOL *Uga, EFI_INPUT_KEY *key);
+
+typedef
+EFI_STATUS\r
+(*UGABlt)(EFI_UNIX_UGA_IO_PROTOCOL *Uga,
+         IN  EFI_UGA_PIXEL                           *BltBuffer OPTIONAL,\r
+         IN  EFI_UGA_BLT_OPERATION                   BltOperation,\r
+         IN  UINTN                                   SourceX,\r
+         IN  UINTN                                   SourceY,\r
+         IN  UINTN                                   DestinationX,\r
+         IN  UINTN                                   DestinationY,\r
+         IN  UINTN                                   Width,\r
+         IN  UINTN                                   Height,\r
+         IN  UINTN                                   Delta OPTIONAL);\r
+
+struct _EFI_UNIX_UGA_IO_PROTOCOL {\r
+  VOID                                *Private;
+  UGAClose                            UgaClose;
+  UGASize                             UgaSize;
+  UGACheckKey                         UgaCheckKey;
+  UGAGetKey                           UgaGetKey;
+  UGABlt                              UgaBlt;
+};
+
+\r
+extern EFI_GUID gEfiUnixUgaIoProtocolGuid;\r
+\r
+#endif\r