| /** @file | |
| Provides services to display completion progress when processing a | |
| firmware update that updates the firmware image in a firmware device. | |
| A platform may provide its own instance of this library class to custoimize | |
| how a user is informed of completion progress. | |
| Copyright (c) 2016, Microsoft Corporation | |
| Copyright (c) 2018, Intel Corporation. All rights reserved.<BR> | |
| All rights reserved. | |
| Redistribution and use in source and binary forms, with or without | |
| modification, are permitted provided that the following conditions are met: | |
| 1. Redistributions of source code must retain the above copyright notice, | |
| this list of conditions and the following disclaimer. | |
| 2. Redistributions in binary form must reproduce the above copyright notice, | |
| this list of conditions and the following disclaimer in the documentation | |
| and/or other materials provided with the distribution. | |
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND | |
| ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | |
| WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | |
| IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | |
| INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, | |
| BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |
| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | |
| LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE | |
| OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF | |
| ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
| **/ | |
| #ifndef __DISPLAY_PROGRESS_LIB__ | |
| #define __DISPLAY_PROGRESS_LIB__ | |
| #include <Protocol/GraphicsOutput.h> | |
| /** | |
| Indicates the current completion progress of a firmware update. | |
| @param[in] Completion A value between 0 and 100 indicating the current | |
| completion progress of a firmware update. This | |
| value must the the same or higher than previous | |
| calls to this service. The first call of 0 or a | |
| value of 0 after reaching a value of 100 resets | |
| the progress indicator to 0. | |
| @param[in] Color Color of the progress indicator. Only used when | |
| Completion is 0 to set the color of the progress | |
| indicator. If Color is NULL, then the default color | |
| is used. | |
| @retval EFI_SUCCESS Progress displayed successfully. | |
| @retval EFI_INVALID_PARAMETER Completion is not in range 0..100. | |
| @retval EFI_INVALID_PARAMETER Completion is less than Completion value from | |
| a previous call to this service. | |
| @retval EFI_NOT_READY The device used to indicate progress is not | |
| available. | |
| **/ | |
| EFI_STATUS | |
| EFIAPI | |
| DisplayUpdateProgress ( | |
| IN UINTN Completion, | |
| IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION *Color OPTIONAL | |
| ); | |
| #endif |