1 /** @file 2 Provides services to display completion progress when processing a 3 firmware update that updates the firmware image in a firmware device. 4 A platform may provide its own instance of this library class to custoimize 5 how a user is informed of completion progress. 6 7 Copyright (c) 2016, Microsoft Corporation 8 Copyright (c) 2018, Intel Corporation. All rights reserved.<BR> 9 10 All rights reserved. 11 SPDX-License-Identifier: BSD-2-Clause-Patent 12 13 **/ 14 15 #ifndef __DISPLAY_PROGRESS_LIB__ 16 #define __DISPLAY_PROGRESS_LIB__ 17 18 #include <Protocol/GraphicsOutput.h> 19 20 /** 21 Indicates the current completion progress of a firmware update. 22 23 @param[in] Completion A value between 0 and 100 indicating the current 24 completion progress of a firmware update. This 25 value must the the same or higher than previous 26 calls to this service. The first call of 0 or a 27 value of 0 after reaching a value of 100 resets 28 the progress indicator to 0. 29 @param[in] Color Color of the progress indicator. Only used when 30 Completion is 0 to set the color of the progress 31 indicator. If Color is NULL, then the default color 32 is used. 33 34 @retval EFI_SUCCESS Progress displayed successfully. 35 @retval EFI_INVALID_PARAMETER Completion is not in range 0..100. 36 @retval EFI_INVALID_PARAMETER Completion is less than Completion value from 37 a previous call to this service. 38 @retval EFI_NOT_READY The device used to indicate progress is not 39 available. 40 **/ 41 EFI_STATUS 42 EFIAPI 43 DisplayUpdateProgress ( 44 IN UINTN Completion, 45 IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION *Color OPTIONAL 46 ); 47 48 #endif 49