git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2898 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			186 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			186 lines
		
	
	
		
			4.6 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:
 | 
						|
 | 
						|
  GraphicsLib.h
 | 
						|
 | 
						|
Abstract:
 | 
						|
 | 
						|
 
 | 
						|
--*/
 | 
						|
 | 
						|
#ifndef _EFI_GRAPHICS_LIB_H_
 | 
						|
#define _EFI_GRAPHICS_LIB_H_
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
GetGraphicsBitMapFromFV (
 | 
						|
  IN  EFI_GUID      *FileNameGuid,
 | 
						|
  OUT VOID          **Image,
 | 
						|
  OUT UINTN         *ImageSize
 | 
						|
  )
 | 
						|
/*++
 | 
						|
 | 
						|
Routine Description:
 | 
						|
 | 
						|
  Return the graphics image file named FileNameGuid into Image and return it's
 | 
						|
  size in ImageSize. All Firmware Volumes (FV) in the system are searched for the
 | 
						|
  file name.
 | 
						|
 | 
						|
Arguments:
 | 
						|
 | 
						|
  FileNameGuid  - File Name of graphics file in the FV(s).
 | 
						|
 | 
						|
  Image         - Pointer to pointer to return graphics image.  If NULL, a 
 | 
						|
                  buffer will be allocated.
 | 
						|
 | 
						|
  ImageSize     - Size of the graphics Image in bytes. Zero if no image found.
 | 
						|
 | 
						|
 | 
						|
Returns: 
 | 
						|
 | 
						|
  EFI_SUCCESS          - Image and ImageSize are valid. 
 | 
						|
  EFI_BUFFER_TOO_SMALL - Image not big enough. ImageSize has required size
 | 
						|
  EFI_NOT_FOUND        - FileNameGuid not found
 | 
						|
 | 
						|
--*/
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
ConvertBmpToUgaBlt (
 | 
						|
  IN  VOID      *BmpImage,
 | 
						|
  IN  UINTN     BmpImageSize,
 | 
						|
  IN OUT VOID   **UgaBlt,
 | 
						|
  IN OUT UINTN  *UgaBltSize,
 | 
						|
  OUT UINTN     *PixelHeight,
 | 
						|
  OUT UINTN     *PixelWidth
 | 
						|
  )
 | 
						|
/*++
 | 
						|
 | 
						|
Routine Description:
 | 
						|
 | 
						|
  Convert a *.BMP graphics image to a UGA blt buffer. If a NULL UgaBlt buffer
 | 
						|
  is passed in a UgaBlt buffer will be allocated by this routine. If a UgaBlt
 | 
						|
  buffer is passed in it will be used if it is big enough.
 | 
						|
 | 
						|
Arguments:
 | 
						|
 | 
						|
  BmpImage      - Pointer to BMP file
 | 
						|
 | 
						|
  BmpImageSize  - Number of bytes in BmpImage
 | 
						|
 | 
						|
  UgaBlt        - Buffer containing UGA version of BmpImage.
 | 
						|
 | 
						|
  UgaBltSize    - Size of UgaBlt in bytes.
 | 
						|
 | 
						|
  PixelHeight   - Height of UgaBlt/BmpImage in pixels
 | 
						|
 | 
						|
  PixelWidth    - Width of UgaBlt/BmpImage in pixels
 | 
						|
 | 
						|
 | 
						|
Returns: 
 | 
						|
 | 
						|
  EFI_SUCCESS           - UgaBlt and UgaBltSize are returned. 
 | 
						|
  EFI_UNSUPPORTED       - BmpImage is not a valid *.BMP image
 | 
						|
  EFI_BUFFER_TOO_SMALL  - The passed in UgaBlt buffer is not big enough.
 | 
						|
                          UgaBltSize will contain the required size.
 | 
						|
 | 
						|
--*/
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
EnableQuietBoot (
 | 
						|
  IN  EFI_GUID  *LogoFile
 | 
						|
  )
 | 
						|
/*++
 | 
						|
 | 
						|
Routine Description:
 | 
						|
 | 
						|
  Use Console Control to turn off UGA based Simple Text Out consoles from going
 | 
						|
  to the UGA device. Put up LogoFile on every UGA device that is a console
 | 
						|
 | 
						|
Arguments:
 | 
						|
 | 
						|
  LogoFile - File name of logo to display on the center of the screen.
 | 
						|
 | 
						|
 | 
						|
Returns: 
 | 
						|
 | 
						|
  EFI_SUCCESS           - ConsoleControl has been flipped to graphics and logo
 | 
						|
                          displayed.
 | 
						|
  EFI_UNSUPPORTED       - Logo not found
 | 
						|
 | 
						|
--*/
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
DisableQuietBoot (
 | 
						|
  VOID
 | 
						|
  )
 | 
						|
/*++
 | 
						|
 | 
						|
Routine Description:
 | 
						|
 | 
						|
  Use Console Control to turn on UGA based Simple Text Out consoles. The UGA 
 | 
						|
  Simple Text Out screens will now be synced up with all non UGA output devices
 | 
						|
 | 
						|
Arguments:
 | 
						|
 | 
						|
  NONE
 | 
						|
 | 
						|
Returns: 
 | 
						|
 | 
						|
  EFI_SUCCESS           - UGA devices are back in text mode and synced up.
 | 
						|
  EFI_UNSUPPORTED       - Logo not found
 | 
						|
 | 
						|
--*/
 | 
						|
;
 | 
						|
 | 
						|
EFI_STATUS
 | 
						|
LockKeyboards (
 | 
						|
  IN  CHAR16    *Password
 | 
						|
  )
 | 
						|
/*++
 | 
						|
 | 
						|
Routine Description:
 | 
						|
  Use Console Control Protocol to lock the Console In Spliter virtual handle. 
 | 
						|
  This is the ConInHandle and ConIn handle in the EFI system table. All key
 | 
						|
  presses will be ignored until the Password is typed in. The only way to
 | 
						|
  disable the password is to type it in to a ConIn device.
 | 
						|
 | 
						|
Arguments:
 | 
						|
  Password - Password used to lock ConIn device
 | 
						|
 | 
						|
 | 
						|
Returns: 
 | 
						|
 | 
						|
  EFI_SUCCESS     - ConsoleControl has been flipped to graphics and logo
 | 
						|
                    displayed.
 | 
						|
  EFI_UNSUPPORTED - Logo not found
 | 
						|
 | 
						|
--*/
 | 
						|
;
 | 
						|
 | 
						|
UINTN
 | 
						|
EFIAPI
 | 
						|
PrintXY (
 | 
						|
  IN UINTN                            X,
 | 
						|
  IN UINTN                            Y,
 | 
						|
  IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL    *Foreground, OPTIONAL
 | 
						|
  IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL    *Background, OPTIONAL
 | 
						|
  IN CHAR16                           *Fmt,
 | 
						|
  ...
 | 
						|
  )
 | 
						|
;
 | 
						|
 | 
						|
 | 
						|
#endif
 |