]>
Commit | Line | Data |
---|---|---|
6313eb25 RN |
1 | /** @file\r |
2 | The Platform Logo Protocol defines the interface to get the Platform logo\r | |
3 | image with the display attribute.\r | |
4 | \r | |
5 | Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>\r | |
6 | This program and the accompanying materials are licensed and made available under \r | |
7 | the terms and conditions of the BSD License that accompanies this distribution. \r | |
8 | The full text of the license may be found at\r | |
9 | http://opensource.org/licenses/bsd-license.php. \r | |
10 | \r | |
11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r | |
12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r | |
13 | \r | |
14 | **/\r | |
15 | \r | |
16 | #ifndef __PLATFORM_LOGO_H__\r | |
17 | #define __PLATFORM_LOGO_H__\r | |
18 | \r | |
19 | //\r | |
20 | // GUID for EDKII Platform Logo Protocol\r | |
21 | //\r | |
22 | #define EDKII_PLATFORM_LOGO_PROTOCOL_GUID \\r | |
23 | { 0x9b517978, 0xeba1, 0x44e7, { 0xba, 0x65, 0x7c, 0x2c, 0xd0, 0x8b, 0xf8, 0xe9 } }\r | |
24 | \r | |
25 | typedef struct _EDKII_PLATFORM_LOGO_PROTOCOL EDKII_PLATFORM_LOGO_PROTOCOL;\r | |
26 | \r | |
27 | typedef enum {\r | |
28 | ImageFormatUnknown,\r | |
29 | ImageFormatBmp,\r | |
30 | ImageFormatJpeg,\r | |
31 | ImageFormatTiff,\r | |
32 | ImageFormatGif\r | |
33 | } IMAGE_FORMAT;\r | |
34 | \r | |
35 | typedef enum {\r | |
36 | EdkiiPlatformLogoDisplayAttributeLeftTop,\r | |
37 | EdkiiPlatformLogoDisplayAttributeCenterTop,\r | |
38 | EdkiiPlatformLogoDisplayAttributeRightTop,\r | |
39 | EdkiiPlatformLogoDisplayAttributeCenterRight,\r | |
40 | EdkiiPlatformLogoDisplayAttributeRightBottom,\r | |
41 | EdkiiPlatformLogoDisplayAttributeCenterBottom,\r | |
42 | EdkiiPlatformLogoDisplayAttributeLeftBottom,\r | |
43 | EdkiiPlatformLogoDisplayAttributeCenterLeft,\r | |
44 | EdkiiPlatformLogoDisplayAttributeCenter\r | |
45 | } EDKII_PLATFORM_LOGO_DISPLAY_ATTRIBUTE;\r | |
46 | \r | |
47 | /**\r | |
48 | \r | |
49 | Load a platform logo image and return its data and attributes.\r | |
50 | \r | |
51 | @param This The pointer to this protocol instance.\r | |
52 | @param Instance The visible image instance is found.\r | |
53 | @param Format The format of the image. Examples: BMP, JPEG.\r | |
54 | @param ImageData The image data for the badge file. Currently only \r | |
55 | supports the .bmp file format. \r | |
56 | @param ImageSize The size of the image returned.\r | |
57 | @param Attribute The display attributes of the image returned.\r | |
c25be72e RN |
58 | @param OffsetX The X offset of the image regarding the Attribute.\r |
59 | @param OffsetY The Y offset of the image regarding the Attribute.\r | |
6313eb25 RN |
60 | \r |
61 | @retval EFI_SUCCESS The image was fetched successfully.\r | |
62 | @retval EFI_NOT_FOUND The specified image could not be found.\r | |
63 | \r | |
64 | **/\r | |
65 | typedef\r | |
66 | EFI_STATUS\r | |
67 | (EFIAPI *EDKII_PLATFORM_LOGO_GET_IMAGE)(\r | |
68 | IN EDKII_PLATFORM_LOGO_PROTOCOL *This,\r | |
69 | IN OUT UINT32 *Instance,\r | |
70 | OUT IMAGE_FORMAT *Format,\r | |
71 | OUT UINT8 **ImageData,\r | |
72 | OUT UINTN *ImageSize,\r | |
73 | OUT EDKII_PLATFORM_LOGO_DISPLAY_ATTRIBUTE *Attribute,\r | |
c25be72e RN |
74 | OUT INTN *OffsetX,\r |
75 | OUT INTN *OffsetY\r | |
6313eb25 RN |
76 | );\r |
77 | \r | |
78 | \r | |
79 | struct _EDKII_PLATFORM_LOGO_PROTOCOL {\r | |
80 | EDKII_PLATFORM_LOGO_GET_IMAGE GetImage;\r | |
81 | };\r | |
82 | \r | |
83 | \r | |
84 | extern EFI_GUID gEdkiiPlatformLogoProtocolGuid;\r | |
85 | \r | |
86 | #endif\r |