]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Library/GraphicsLib.h
UEFI HII: Merge UEFI HII support changes from branch.
[mirror_edk2.git] / MdePkg / Include / Library / GraphicsLib.h
index f503561708754af5a8c2e299641461241b9f0e91..c9fa564a8c01337e31c7958621cabb9ccbc7f833 100644 (file)
   Return the graphics image file named FileNameGuid into Image and return it's\r
   size in ImageSize. All Firmware Volumes (FV) in the system are searched for the\r
   file name.\r
-
-  @param[in]  FileNameGuid  File Name of graphics file in the FV(s).
+\r
+  @param[in]  FileNameGuid  File Name of graphics file in the FV(s).\r
   @param[out] Image         Pointer to pointer to return graphics image.  If NULL, a \r
-                            buffer will be allocated.
+                            buffer will be allocated.\r
   @param[out] ImageSize     Size of the graphics Image in bytes. Zero if no image found.\r
-
-  @retval   EFI_INVALID_PARAMETER  invalid parameter
+\r
+  @retval   EFI_INVALID_PARAMETER  invalid parameter\r
   @retval   EFI_UNSUPPORTED        Range can not be erased\r
   @retval   EFI_SUCCESS            Image and ImageSize are valid. \r
   @retval   EFI_BUFFER_TOO_SMALL   Image not big enough. ImageSize has required size\r
   @retval   EFI_NOT_FOUND          FileNameGuid not found\r
-
+\r
 **/\r
 EFI_STATUS\r
 GetGraphicsBitMapFromFV (\r
@@ -42,23 +42,50 @@ GetGraphicsBitMapFromFV (
   OUT UINTN         *ImageSize\r
   );\r
 \r
+/**\r
+  Return the graphics image file named FileNameGuid into Image and return it's\r
+  size in ImageSize. All Firmware Volumes (FV) in the system are searched for the\r
+  file name.\r
+\r
+  @param[in]  ImageHandle   The driver image handle of the caller. The parameter is used to\r
+                            optimize the loading of the image file so that the FV from which\r
+                            the driver image is loaded will be tried first. \r
+  @param[in]  FileNameGuid  File Name of graphics file in the FV(s).\r
+  @param[out] Image         Pointer to pointer to return graphics image.  If NULL, a \r
+                            buffer will be allocated.\r
+  @param[out] ImageSize     Size of the graphics Image in bytes. Zero if no image found.\r
+\r
+  @retval   EFI_INVALID_PARAMETER  invalid parameter\r
+  @retval   EFI_UNSUPPORTED        Range can not be erased\r
+  @retval   EFI_SUCCESS            Image and ImageSize are valid. \r
+  @retval   EFI_BUFFER_TOO_SMALL   Image not big enough. ImageSize has required size\r
+  @retval   EFI_NOT_FOUND          FileNameGuid not found\r
+\r
+**/\r
+EFI_STATUS\r
+GetGraphicsBitMapFromFVEx (\r
+  IN  EFI_HANDLE    ImageHandle,\r
+  IN  EFI_GUID      *FileNameGuid,\r
+  OUT VOID          **Image,\r
+  OUT UINTN         *ImageSize\r
+  );\r
 \r
 /**\r
   Convert a *.BMP graphics image to a UGA blt buffer. If a NULL UgaBlt buffer\r
   is passed in a UgaBlt buffer will be allocated by this routine. If a UgaBlt\r
   buffer is passed in it will be used if it is big enough.\r
-
-  @param[in]      BmpImage      Pointer to BMP file
-  @param[in]      BmpImageSize  Number of bytes in BmpImage
-  @param[in,out]  UgaBlt        Buffer containing UGA version of BmpImage.
-  @param[in,out]  UgaBltSize    Size of UgaBlt in bytes.
-  @param[out]     PixelHeight   Height of UgaBlt/BmpImage in pixels
-  @param[out]     PixelWidth    Width of UgaBlt/BmpImage in pixels
-
+\r
+  @param[in]      BmpImage      Pointer to BMP file\r
+  @param[in]      BmpImageSize  Number of bytes in BmpImage\r
+  @param[in,out]  UgaBlt        Buffer containing UGA version of BmpImage.\r
+  @param[in,out]  UgaBltSize    Size of UgaBlt in bytes.\r
+  @param[out]     PixelHeight   Height of UgaBlt/BmpImage in pixels\r
+  @param[out]     PixelWidth    Width of UgaBlt/BmpImage in pixels\r
+\r
   @retval EFI_SUCCESS           UgaBlt and UgaBltSize are returned. \r
   @retval EFI_UNSUPPORTED       BmpImage is not a valid *.BMP image\r
   @retval EFI_BUFFER_TOO_SMALL  The passed in UgaBlt buffer is not big enough.\r
-                                UgaBltSize will contain the required size.
+                                UgaBltSize will contain the required size.\r
 **/\r
 EFI_STATUS\r
 ConvertBmpToUgaBlt (\r
@@ -74,9 +101,9 @@ ConvertBmpToUgaBlt (
 /**\r
   Use Console Control to turn off UGA based Simple Text Out consoles from going\r
   to the UGA device. Put up LogoFile on every UGA device that is a console\r
-
-  @param[in]  LogoFile   File name of logo to display on the center of the screen.
-
+\r
+  @param[in]  LogoFile   File name of logo to display on the center of the screen.\r
+\r
   @retval EFI_SUCCESS     ConsoleControl has been flipped to graphics and logo displayed.\r
   @retval EFI_UNSUPPORTED Logo not found\r
 \r
@@ -86,11 +113,30 @@ EnableQuietBoot (
   IN  EFI_GUID  *LogoFile\r
   );\r
 \r
+/**\r
+  Use Console Control to turn off GOP/UGA based Simple Text Out consoles from going\r
+  to the UGA device. Put up LogoFile on every UGA device that is a console\r
+\r
+  @param  LogoFile    File name of logo to display on the center of the screen.\r
+  @param  ImageHandle The driver image handle of the caller. The parameter is used to\r
+                      optimize the loading of the logo file so that the FV from which\r
+                      the driver image is loaded will be tried first.\r
+\r
+  @retval EFI_SUCCESS     ConsoleControl has been flipped to graphics and logo displayed.\r
+  @retval EFI_UNSUPPORTED Logo not found\r
+\r
+**/\r
+EFI_STATUS\r
+EnableQuietBootEx (\r
+  IN  EFI_GUID    *LogoFile,\r
+  IN  EFI_HANDLE  ImageHandle\r
+  );\r
+\r
 \r
 /**\r
   Use Console Control to turn on UGA based Simple Text Out consoles. The UGA \r
   Simple Text Out screens will now be synced up with all non UGA output devices\r
-
+\r
   @retval EFI_SUCCESS     UGA devices are back in text mode and synced up.\r
 \r
 **/\r
@@ -105,9 +151,9 @@ DisableQuietBoot (
   This is the ConInHandle and ConIn handle in the EFI system table. All key\r
   presses will be ignored until the Password is typed in. The only way to\r
   disable the password is to type it in to a ConIn device.\r
-
-  @param[in]  Password   Password used to lock ConIn device.
-
+\r
+  @param[in]  Password   Password used to lock ConIn device.\r
+\r
   @retval EFI_SUCCESS     ConsoleControl has been flipped to graphics and logo\r
                           displayed.\r
   @retval EFI_UNSUPPORTED Password not found\r
@@ -120,16 +166,16 @@ LockKeyboards (
 \r
 \r
 /**\r
-  Print to graphics screen at the given X,Y coordinates of the graphics screen.
-  see definition of Print to find rules for constructing Fmt.
-
-  @param[in]  X            Row to start printing at
-  @param[in]  Y            Column to start printing at
-  @param[in]  Foreground   Foreground color
-  @param[in]  Background   background color
-  @param[in]  Fmt          Print format sting. See definition of Print
-  @param[in]  ...          Argumnet stream defined by Fmt string
-
+  Print to graphics screen at the given X,Y coordinates of the graphics screen.\r
+  see definition of Print to find rules for constructing Fmt.\r
+\r
+  @param[in]  X            Row to start printing at\r
+  @param[in]  Y            Column to start printing at\r
+  @param[in]  Foreground   Foreground color\r
+  @param[in]  Background   background color\r
+  @param[in]  Fmt          Print format sting. See definition of Print\r
+  @param[in]  ...          Argumnet stream defined by Fmt string\r
+\r
   @retval UINTN     Number of Characters printed\r
 \r
 **/\r