]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UnixPkg/UnixUgaDxe/UnixUga.h
Adding Simple Pointer, GOP, SimpleTextInEx, and Networking protocols to the emulator...
[mirror_edk2.git] / UnixPkg / UnixUgaDxe / UnixUga.h
index b6d2a308535ec3100a611e01dee93875676bba0e..e1e61f72f9a4216edea9f5ac24dd204cfc5d79a7 100644 (file)
@@ -25,6 +25,7 @@ Abstract:
 #include "PiDxe.h"
 #include <Guid/EventGroup.h>
 #include <Protocol/SimpleTextIn.h>
+#include <Protocol/SimplePointer.h>
 #include <Protocol/UgaDraw.h>
 #include "Protocol/UnixUgaIo.h"
 #include <Library/DebugLib.h>
@@ -48,6 +49,7 @@ typedef struct {
   EFI_HANDLE                  Handle;
   EFI_UGA_DRAW_PROTOCOL       UgaDraw;
   EFI_SIMPLE_TEXT_INPUT_PROTOCOL SimpleTextIn;
+  EFI_SIMPLE_POINTER_PROTOCOL SimplePointer;
 
   EFI_UNIX_THUNK_PROTOCOL   *UnixThunk;
 
@@ -61,6 +63,8 @@ typedef struct {
   UINT32                      ColorDepth;
   UINT32                      RefreshRate;
 
+  EFI_SIMPLE_POINTER_MODE     PointerMode;
+
   //
   // UGA Private Data knowing when to start hardware
   //
@@ -78,6 +82,9 @@ typedef struct {
 #define UGA_PRIVATE_DATA_FROM_TEXT_IN_THIS(a)  \
          CR(a, UGA_PRIVATE_DATA, SimpleTextIn, UGA_PRIVATE_DATA_SIGNATURE)
 
+#define UGA_PRIVATE_DATA_FROM_POINTER_THIS(a)  \
+         CR(a, UGA_PRIVATE_DATA, SimplePointer, UGA_PRIVATE_DATA_SIGNATURE)
+
 //
 // Global Protocol Variables
 //
@@ -287,6 +294,27 @@ UnixUgaInitializeSimpleTextInForWindow (
   )
 /*++
 
+Routine Description:
+
+  TODO: Add function description
+
+Arguments:
+
+  Private - TODO: add argument description
+
+Returns:
+
+  TODO: add return values
+
+--*/
+;
+
+EFI_STATUS
+UnixUgaInitializeSimplePointerForWindow (
+  IN  UGA_PRIVATE_DATA    *Private
+  )
+/*++
+
 Routine Description:
 
   TODO: Add function description