Move OEMBadging protocol from MdeModulePkg to IntelFrameworkModulePkg
[mirror_edk2.git] / IntelFrameworkModulePkg / Include / Protocol / OEMBadging.h
1 /** @file
2 The OEM Badging Protocol defines the interface to get the OEM badging
3 image with the dispaly attribute. This protocol can be produced based on OEM badging images.
4
5 Copyright (c) 2006 - 2008, Intel Corporation. <BR>
6 All rights reserved. This program and the accompanying materials
7 are licensed and made available under the terms and conditions of the BSD License
8 which accompanies this distribution. The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php
10
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13
14 **/
15
16 #ifndef __EFI_OEM_BADGING_H__
17 #define __EFI_OEM_BADGING_H__
18
19 //
20 // GUID for EFI OEM Badging Protocol
21 //
22 #define EFI_OEM_BADGING_PROTOCOL_GUID \
23 { 0x170e13c0, 0xbf1b, 0x4218, {0x87, 0x1d, 0x2a, 0xbd, 0xc6, 0xf8, 0x87, 0xbc } }
24
25
26 typedef struct _EFI_OEM_BADGING_PROTOCOL EFI_OEM_BADGING_PROTOCOL;
27
28 typedef enum {
29 EfiBadgingFormatBMP,
30 EfiBadgingFormatJPEG,
31 EfiBadgingFormatTIFF,
32 EfiBadgingFormatGIF,
33 EfiBadgingFormatUnknown
34 } EFI_BADGING_FORMAT;
35
36 typedef enum {
37 EfiBadgingDisplayAttributeLeftTop,
38 EfiBadgingDisplayAttributeCenterTop,
39 EfiBadgingDisplayAttributeRightTop,
40 EfiBadgingDisplayAttributeCenterRight,
41 EfiBadgingDisplayAttributeRightBottom,
42 EfiBadgingDisplayAttributeCenterBottom,
43 EfiBadgingDisplayAttributeLeftBottom,
44 EfiBadgingDisplayAttributeCenterLeft,
45 EfiBadgingDisplayAttributeCenter,
46 EfiBadgingDisplayAttributeCustomized
47 } EFI_BADGING_DISPLAY_ATTRIBUTE;
48
49 /**
50
51 Load an OEM badge image and return its data as well as attributes.
52
53 @param This Pointer to this protocol instance.
54 @param Instance The visiable image instance is found.
55 @param Format Format of the image such as BMP,JPEG,etc.
56 @param ImageData Image data returned.
57 @param ImageSize Size of the image returned.
58 @param Attribute Display attributes of the image returned.
59 @param CoordinateX X coordinate of the image.
60 @param CoordinateY Y coordinate of the image.
61
62 @retval EFI_SUCCESS Image has been fetched successfully.
63 @retval EFI_NOT_FOUND The specified image could not be found.
64
65 **/
66 typedef
67 EFI_STATUS
68 (EFIAPI *EFI_BADGING_GET_IMAGE)(
69 IN EFI_OEM_BADGING_PROTOCOL *This,
70 IN OUT UINT32 *Instance,
71 OUT EFI_BADGING_FORMAT *Format,
72 OUT UINT8 **ImageData,
73 OUT UINTN *ImageSize,
74 OUT EFI_BADGING_DISPLAY_ATTRIBUTE *Attribute,
75 OUT UINTN *CoordinateX,
76 OUT UINTN *CoordinateY
77 );
78
79
80 struct _EFI_OEM_BADGING_PROTOCOL {
81 EFI_BADGING_GET_IMAGE GetImage;
82 };
83
84
85 extern EFI_GUID gEfiOEMBadgingProtocolGuid;
86
87 #endif