]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Include/Protocol/PlatformLogo.h
MdeModulePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / MdeModulePkg / Include / Protocol / PlatformLogo.h
1 /** @file
2 The Platform Logo Protocol defines the interface to get the Platform logo
3 image with the display attribute.
4
5 Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>
6 SPDX-License-Identifier: BSD-2-Clause-Patent
7
8 **/
9
10 #ifndef __PLATFORM_LOGO_H__
11 #define __PLATFORM_LOGO_H__
12
13 #include <Protocol/HiiImage.h>
14
15 //
16 // GUID for EDKII Platform Logo Protocol
17 //
18 #define EDKII_PLATFORM_LOGO_PROTOCOL_GUID \
19 { 0x53cd299f, 0x2bc1, 0x40c0, { 0x8c, 0x07, 0x23, 0xf6, 0x4f, 0xdb, 0x30, 0xe0 } }
20
21 typedef struct _EDKII_PLATFORM_LOGO_PROTOCOL EDKII_PLATFORM_LOGO_PROTOCOL;
22
23 typedef enum {
24 EdkiiPlatformLogoDisplayAttributeLeftTop,
25 EdkiiPlatformLogoDisplayAttributeCenterTop,
26 EdkiiPlatformLogoDisplayAttributeRightTop,
27 EdkiiPlatformLogoDisplayAttributeCenterRight,
28 EdkiiPlatformLogoDisplayAttributeRightBottom,
29 EdkiiPlatformLogoDisplayAttributeCenterBottom,
30 EdkiiPlatformLogoDisplayAttributeLeftBottom,
31 EdkiiPlatformLogoDisplayAttributeCenterLeft,
32 EdkiiPlatformLogoDisplayAttributeCenter
33 } EDKII_PLATFORM_LOGO_DISPLAY_ATTRIBUTE;
34
35 /**
36 Load a platform logo image and return its data and attributes.
37
38 @param This The pointer to this protocol instance.
39 @param Instance The visible image instance is found.
40 @param Image Points to the image.
41 @param Attribute The display attributes of the image returned.
42 @param OffsetX The X offset of the image regarding the Attribute.
43 @param OffsetY The Y offset of the image regarding the Attribute.
44
45 @retval EFI_SUCCESS The image was fetched successfully.
46 @retval EFI_NOT_FOUND The specified image could not be found.
47 **/
48 typedef
49 EFI_STATUS
50 (EFIAPI *EDKII_PLATFORM_LOGO_GET_IMAGE)(
51 IN EDKII_PLATFORM_LOGO_PROTOCOL *This,
52 IN OUT UINT32 *Instance,
53 OUT EFI_IMAGE_INPUT *Image,
54 OUT EDKII_PLATFORM_LOGO_DISPLAY_ATTRIBUTE *Attribute,
55 OUT INTN *OffsetX,
56 OUT INTN *OffsetY
57 );
58
59
60 struct _EDKII_PLATFORM_LOGO_PROTOCOL {
61 EDKII_PLATFORM_LOGO_GET_IMAGE GetImage;
62 };
63
64
65 extern EFI_GUID gEdkiiPlatformLogoProtocolGuid;
66
67 #endif