git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			624 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			624 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*++
 | 
						|
 | 
						|
Copyright (c) 2006, Intel Corporation                                                         
 | 
						|
All rights reserved. This program and the accompanying materials                          
 | 
						|
are licensed and made available under the terms and conditions of the BSD License         
 | 
						|
which accompanies this distribution.  The full text of the license may be found at        
 | 
						|
http://opensource.org/licenses/bsd-license.php                                            
 | 
						|
                                                                                          
 | 
						|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     
 | 
						|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             
 | 
						|
 | 
						|
Module Name:
 | 
						|
 | 
						|
  ConSplitter.h
 | 
						|
 | 
						|
Abstract:
 | 
						|
 | 
						|
  Private data structures for the Console Splitter driver
 | 
						|
 | 
						|
--*/
 | 
						|
 | 
						|
#ifndef SPLITER_H_
 | 
						|
#define SPLITER_H_
 | 
						|
 | 
						|
//
 | 
						|
// Private Data Structures
 | 
						|
//
 | 
						|
#define CONSOLE_SPLITTER_CONSOLES_ALLOC_UNIT  32
 | 
						|
#define CONSOLE_SPLITTER_MODES_ALLOC_UNIT     32
 | 
						|
#define MAX_STD_IN_PASSWORD                   80
 | 
						|
 | 
						|
typedef struct {
 | 
						|
  UINTN Columns;
 | 
						|
  UINTN Rows;
 | 
						|
} TEXT_OUT_SPLITTER_QUERY_DATA;
 | 
						|
 | 
						|
//
 | 
						|
// Private data for the EFI_SIMPLE_INPUT_PROTOCOL splitter
 | 
						|
//
 | 
						|
#define TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE EFI_SIGNATURE_32 ('T', 'i', 'S', 'p')
 | 
						|
 | 
						|
typedef struct {
 | 
						|
  UINT64                      Signature;
 | 
						|
  EFI_HANDLE                  VirtualHandle;
 | 
						|
 | 
						|
  EFI_SIMPLE_TEXT_IN_PROTOCOL TextIn;
 | 
						|
  UINTN                       CurrentNumberOfConsoles;
 | 
						|
  EFI_SIMPLE_TEXT_IN_PROTOCOL **TextInList;
 | 
						|
  UINTN                       TextInListCount;
 | 
						|
 | 
						|
  EFI_SIMPLE_POINTER_PROTOCOL SimplePointer;
 | 
						|
  EFI_SIMPLE_POINTER_MODE     SimplePointerMode;
 | 
						|
  UINTN                       CurrentNumberOfPointers;
 | 
						|
  EFI_SIMPLE_POINTER_PROTOCOL **PointerList;
 | 
						|
  UINTN                       PointerListCount;
 | 
						|
 | 
						|
  BOOLEAN                     PasswordEnabled;
 | 
						|
  CHAR16                      Password[MAX_STD_IN_PASSWORD];
 | 
						|
  UINTN                       PwdIndex;
 | 
						|
  CHAR16                      PwdAttempt[MAX_STD_IN_PASSWORD];
 | 
						|
  EFI_EVENT                   LockEvent;
 | 
						|
 | 
						|
  BOOLEAN                     KeyEventSignalState;
 | 
						|
  BOOLEAN                     InputEventSignalState;
 | 
						|
} TEXT_IN_SPLITTER_PRIVATE_DATA;
 | 
						|
 | 
						|
#define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_THIS(a) \
 | 
						|
  CR (a, \
 | 
						|
      TEXT_IN_SPLITTER_PRIVATE_DATA, \
 | 
						|
      TextIn, \
 | 
						|
      TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE \
 | 
						|
      )
 | 
						|
 | 
						|
#define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_SIMPLE_POINTER_THIS(a) \
 | 
						|
  CR (a, \
 | 
						|
      TEXT_IN_SPLITTER_PRIVATE_DATA, \
 | 
						|
      SimplePointer, \
 | 
						|
      TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE \
 | 
						|
      )
 | 
						|
 | 
						|
//
 | 
						|
// Private data for the EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL splitter
 | 
						|
//
 | 
						|
#define TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE  EFI_SIGNATURE_32 ('T', 'o', 'S', 'p')
 | 
						|
 | 
						|
typedef struct {
 | 
						|
  EFI_UGA_DRAW_PROTOCOL         *UgaDraw;
 | 
						|
  EFI_SIMPLE_TEXT_OUT_PROTOCOL  *TextOut;
 | 
						|
  BOOLEAN                       TextOutEnabled;
 | 
						|
} TEXT_OUT_AND_UGA_DATA;
 | 
						|
 | 
						|
typedef struct {
 | 
						|
  UINT64                          Signature;
 | 
						|
  EFI_HANDLE                      VirtualHandle;
 | 
						|
  EFI_SIMPLE_TEXT_OUT_PROTOCOL    TextOut;
 | 
						|
  EFI_SIMPLE_TEXT_OUTPUT_MODE     TextOutMode;
 | 
						|
  EFI_UGA_DRAW_PROTOCOL           UgaDraw;
 | 
						|
  UINT32                          UgaHorizontalResolution;
 | 
						|
  UINT32                          UgaVerticalResolution;
 | 
						|
  UINT32                          UgaColorDepth;
 | 
						|
  UINT32                          UgaRefreshRate;
 | 
						|
  EFI_UGA_PIXEL                   *UgaBlt;
 | 
						|
 | 
						|
  EFI_CONSOLE_CONTROL_PROTOCOL    ConsoleControl;
 | 
						|
 | 
						|
  UINTN                           CurrentNumberOfConsoles;
 | 
						|
  TEXT_OUT_AND_UGA_DATA           *TextOutList;
 | 
						|
  UINTN                           TextOutListCount;
 | 
						|
  TEXT_OUT_SPLITTER_QUERY_DATA    *TextOutQueryData;
 | 
						|
  UINTN                           TextOutQueryDataCount;
 | 
						|
  INT32                           *TextOutModeMap;
 | 
						|
 | 
						|
  EFI_CONSOLE_CONTROL_SCREEN_MODE UgaMode;
 | 
						|
 | 
						|
  UINTN                           DevNullColumns;
 | 
						|
  UINTN                           DevNullRows;
 | 
						|
  CHAR16                          *DevNullScreen;
 | 
						|
  INT32                           *DevNullAttributes;
 | 
						|
 | 
						|
} TEXT_OUT_SPLITTER_PRIVATE_DATA;
 | 
						|
 | 
						|
#define TEXT_OUT_SPLITTER_PRIVATE_DATA_FROM_THIS(a) \
 | 
						|
  CR (a, \
 | 
						|
      TEXT_OUT_SPLITTER_PRIVATE_DATA, \
 | 
						|
      TextOut, \
 | 
						|
      TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE \
 | 
						|
      )
 | 
						|
 | 
						|
#define UGA_DRAW_SPLITTER_PRIVATE_DATA_FROM_THIS(a) \
 | 
						|
  CR (a, \
 | 
						|
      TEXT_OUT_SPLITTER_PRIVATE_DATA, \
 | 
						|
      UgaDraw, \
 | 
						|
      TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE \
 | 
						|
      )
 | 
						|
 | 
						|
#define CONSOLE_CONTROL_SPLITTER_PRIVATE_DATA_FROM_THIS(a) \
 | 
						|
  CR (a, \
 | 
						|
      TEXT_OUT_SPLITTER_PRIVATE_DATA, \
 | 
						|
      ConsoleControl, \
 | 
						|
      TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE \
 | 
						|
      )
 | 
						|
 | 
						|
//
 | 
						|
// Function Prototypes
 | 
						|
//
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterDriverEntry (
 | 
						|
  IN EFI_HANDLE                       ImageHandle,
 | 
						|
  IN EFI_SYSTEM_TABLE                 *SystemTable
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
ConSplitterTextInConstructor (
 | 
						|
  TEXT_IN_SPLITTER_PRIVATE_DATA       *Private
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
ConSplitterTextOutConstructor (
 | 
						|
  TEXT_OUT_SPLITTER_PRIVATE_DATA      *Private
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
//
 | 
						|
// Driver Binding Functions
 | 
						|
//
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterConInDriverBindingSupported (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterSimplePointerDriverBindingSupported (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterConOutDriverBindingSupported (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterStdErrDriverBindingSupported (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterConInDriverBindingStart (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterSimplePointerDriverBindingStart (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterConOutDriverBindingStart (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterStdErrDriverBindingStart (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterConInDriverBindingStop (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  UINTN                           NumberOfChildren,
 | 
						|
  IN  EFI_HANDLE                      *ChildHandleBuffer
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterSimplePointerDriverBindingStop (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  UINTN                           NumberOfChildren,
 | 
						|
  IN  EFI_HANDLE                      *ChildHandleBuffer
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterConOutDriverBindingStop (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  UINTN                           NumberOfChildren,
 | 
						|
  IN  EFI_HANDLE                      *ChildHandleBuffer
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterStdErrDriverBindingStop (
 | 
						|
  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
 | 
						|
  IN  EFI_HANDLE                      ControllerHandle,
 | 
						|
  IN  UINTN                           NumberOfChildren,
 | 
						|
  IN  EFI_HANDLE                      *ChildHandleBuffer
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
//
 | 
						|
// TextIn Constructor/Destructor functions
 | 
						|
//
 | 
						|
EFI_STATUS
 | 
						|
ConSplitterTextInAddDevice (
 | 
						|
  IN  TEXT_IN_SPLITTER_PRIVATE_DATA   *Private,
 | 
						|
  IN  EFI_SIMPLE_TEXT_IN_PROTOCOL     *TextIn
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
ConSplitterTextInDeleteDevice (
 | 
						|
  IN  TEXT_IN_SPLITTER_PRIVATE_DATA   *Private,
 | 
						|
  IN  EFI_SIMPLE_TEXT_IN_PROTOCOL     *TextIn
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
//
 | 
						|
// SimplePointer Constuctor/Destructor functions
 | 
						|
//
 | 
						|
EFI_STATUS
 | 
						|
ConSplitterSimplePointerAddDevice (
 | 
						|
  IN  TEXT_IN_SPLITTER_PRIVATE_DATA   *Private,
 | 
						|
  IN  EFI_SIMPLE_POINTER_PROTOCOL     *SimplePointer
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
ConSplitterSimplePointerDeleteDevice (
 | 
						|
  IN  TEXT_IN_SPLITTER_PRIVATE_DATA   *Private,
 | 
						|
  IN  EFI_SIMPLE_POINTER_PROTOCOL     *SimplePointer
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
//
 | 
						|
// TextOut Constuctor/Destructor functions
 | 
						|
//
 | 
						|
EFI_STATUS
 | 
						|
ConSplitterTextOutAddDevice (
 | 
						|
  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,
 | 
						|
  IN  EFI_SIMPLE_TEXT_OUT_PROTOCOL    *TextOut,
 | 
						|
  IN  EFI_UGA_DRAW_PROTOCOL           *UgaDraw
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
ConSplitterTextOutDeleteDevice (
 | 
						|
  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,
 | 
						|
  IN  EFI_SIMPLE_TEXT_OUT_PROTOCOL    *TextOut
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
//
 | 
						|
// TextIn I/O Functions
 | 
						|
//
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextInReset (
 | 
						|
  IN  EFI_SIMPLE_TEXT_IN_PROTOCOL     *This,
 | 
						|
  IN  BOOLEAN                         ExtendedVerification
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextInReadKeyStroke (
 | 
						|
  IN  EFI_SIMPLE_TEXT_IN_PROTOCOL     *This,
 | 
						|
  OUT EFI_INPUT_KEY                   *Key
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
VOID
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextInWaitForKey (
 | 
						|
  IN  EFI_EVENT                       Event,
 | 
						|
  IN  VOID                            *Context
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
BOOLEAN
 | 
						|
ConSpliterConssoleControlStdInLocked (
 | 
						|
  VOID
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
VOID
 | 
						|
EFIAPI
 | 
						|
ConSpliterConsoleControlLockStdInEvent (
 | 
						|
  IN  EFI_EVENT                       Event,
 | 
						|
  IN  VOID                            *Context
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSpliterConsoleControlLockStdIn (
 | 
						|
  IN  EFI_CONSOLE_CONTROL_PROTOCOL    *This,
 | 
						|
  IN  CHAR16                          *Password
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextInPrivateReadKeyStroke (
 | 
						|
  IN  TEXT_IN_SPLITTER_PRIVATE_DATA   *Private,
 | 
						|
  OUT EFI_INPUT_KEY                   *Key
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterSimplePointerReset (
 | 
						|
  IN  EFI_SIMPLE_POINTER_PROTOCOL     *This,
 | 
						|
  IN  BOOLEAN                         ExtendedVerification
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterSimplePointerGetState (
 | 
						|
  IN  EFI_SIMPLE_POINTER_PROTOCOL     *This,
 | 
						|
  IN OUT EFI_SIMPLE_POINTER_STATE     *State
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
VOID
 | 
						|
EFIAPI
 | 
						|
ConSplitterSimplePointerWaitForInput (
 | 
						|
  IN  EFI_EVENT                       Event,
 | 
						|
  IN  VOID                            *Context
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
//
 | 
						|
// TextOut I/O Functions
 | 
						|
//
 | 
						|
VOID
 | 
						|
ConSplitterSynchronizeModeData (
 | 
						|
  TEXT_OUT_SPLITTER_PRIVATE_DATA      *Private
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextOutReset (
 | 
						|
  IN  EFI_SIMPLE_TEXT_OUT_PROTOCOL    *This,
 | 
						|
  IN  BOOLEAN                         ExtendedVerification
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextOutOutputString (
 | 
						|
  IN  EFI_SIMPLE_TEXT_OUT_PROTOCOL    *This,
 | 
						|
  IN  CHAR16                          *WString
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextOutTestString (
 | 
						|
  IN  EFI_SIMPLE_TEXT_OUT_PROTOCOL    *This,
 | 
						|
  IN  CHAR16                          *WString
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextOutQueryMode (
 | 
						|
  IN  EFI_SIMPLE_TEXT_OUT_PROTOCOL    *This,
 | 
						|
  IN  UINTN                           ModeNumber,
 | 
						|
  OUT UINTN                           *Columns,
 | 
						|
  OUT UINTN                           *Rows
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextOutSetMode (
 | 
						|
  IN  EFI_SIMPLE_TEXT_OUT_PROTOCOL    *This,
 | 
						|
  IN  UINTN                           ModeNumber
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextOutSetAttribute (
 | 
						|
  IN  EFI_SIMPLE_TEXT_OUT_PROTOCOL    *This,
 | 
						|
  IN  UINTN                           Attribute
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextOutClearScreen (
 | 
						|
  IN  EFI_SIMPLE_TEXT_OUT_PROTOCOL    *This
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextOutSetCursorPosition (
 | 
						|
  IN  EFI_SIMPLE_TEXT_OUT_PROTOCOL    *This,
 | 
						|
  IN  UINTN                           Column,
 | 
						|
  IN  UINTN                           Row
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSplitterTextOutEnableCursor (
 | 
						|
  IN  EFI_SIMPLE_TEXT_OUT_PROTOCOL    *This,
 | 
						|
  IN  BOOLEAN                         Visible
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
ConSplitterGrowBuffer (
 | 
						|
  IN  UINTN                           SizeOfCount,
 | 
						|
  IN  UINTN                           *Count,
 | 
						|
  IN OUT  VOID                        **Buffer
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSpliterConsoleControlGetMode (
 | 
						|
  IN  EFI_CONSOLE_CONTROL_PROTOCOL    *This,
 | 
						|
  OUT EFI_CONSOLE_CONTROL_SCREEN_MODE *Mode,
 | 
						|
  OUT BOOLEAN                         *UgaExists,
 | 
						|
  OUT BOOLEAN                         *StdInLocked
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSpliterConsoleControlSetMode (
 | 
						|
  IN  EFI_CONSOLE_CONTROL_PROTOCOL    *This,
 | 
						|
  IN  EFI_CONSOLE_CONTROL_SCREEN_MODE Mode
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSpliterUgaDrawGetMode (
 | 
						|
  IN  EFI_UGA_DRAW_PROTOCOL           *This,
 | 
						|
  OUT UINT32                          *HorizontalResolution,
 | 
						|
  OUT UINT32                          *VerticalResolution,
 | 
						|
  OUT UINT32                          *ColorDepth,
 | 
						|
  OUT UINT32                          *RefreshRate
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSpliterUgaDrawSetMode (
 | 
						|
  IN  EFI_UGA_DRAW_PROTOCOL           *This,
 | 
						|
  IN UINT32                           HorizontalResolution,
 | 
						|
  IN UINT32                           VerticalResolution,
 | 
						|
  IN UINT32                           ColorDepth,
 | 
						|
  IN UINT32                           RefreshRate
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
ConSpliterUgaDrawBlt (
 | 
						|
  IN  EFI_UGA_DRAW_PROTOCOL                         *This,
 | 
						|
  IN  EFI_UGA_PIXEL                                 *BltBuffer, OPTIONAL
 | 
						|
  IN  EFI_UGA_BLT_OPERATION                         BltOperation,
 | 
						|
  IN  UINTN                                         SourceX,
 | 
						|
  IN  UINTN                                         SourceY,
 | 
						|
  IN  UINTN                                         DestinationX,
 | 
						|
  IN  UINTN                                         DestinationY,
 | 
						|
  IN  UINTN                                         Width,
 | 
						|
  IN  UINTN                                         Height,
 | 
						|
  IN  UINTN                                         Delta         OPTIONAL
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
DevNullUgaSync (
 | 
						|
  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,
 | 
						|
  IN  EFI_UGA_DRAW_PROTOCOL           *UgaDraw
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
DevNullTextOutOutputString (
 | 
						|
  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,
 | 
						|
  IN  CHAR16                          *WString
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
DevNullTextOutSetMode (
 | 
						|
  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,
 | 
						|
  IN  UINTN                           ModeNumber
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
DevNullTextOutClearScreen (
 | 
						|
  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
DevNullTextOutSetCursorPosition (
 | 
						|
  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,
 | 
						|
  IN  UINTN                           Column,
 | 
						|
  IN  UINTN                           Row
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
DevNullTextOutEnableCursor (
 | 
						|
  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,
 | 
						|
  IN  BOOLEAN                         Visible
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
DevNullSyncUgaStdOut (
 | 
						|
  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
#endif
 |