| /*++
|
|
|
| Copyright (c) 2006 - 2007, Intel Corporation
|
| All rights reserved. This program and the accompanying materials
|
| are licensed and made available under the terms and conditions of the BSD License
|
| which accompanies this distribution. The full text of the license may be found at
|
| http://opensource.org/licenses/bsd-license.php
|
|
|
| THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
| WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
|
| Module Name:
|
|
|
| Print.h
|
|
|
| Abstract:
|
|
|
| This file defines the Print protocol
|
|
|
| --*/
|
|
|
| #ifndef __PPRINT_H__
|
| #define __PPRINT_H__
|
|
|
| #define EFI_PRINT_PROTOCOL_GUID \
|
| { 0x5bcc3dbc, 0x8c57, 0x450a, { 0xbb, 0xc, 0xa1, 0xc0, 0xbd, 0xde, 0x48, 0xc } }
|
|
|
| //
|
| // Forward reference for pure ANSI compatability
|
| //
|
| typedef struct _EFI_PRINT_PROTOCOL EFI_PRINT_PROTOCOL;
|
|
|
|
|
| typedef
|
| UINTN
|
| (EFIAPI *UNI_VSPRINT) (
|
| OUT CHAR16 *StartOfBuffer,
|
| IN UINTN BufferSize,
|
| IN CONST CHAR16 *FormatString,
|
| IN VA_LIST Marker
|
| );
|
|
|
| typedef
|
| UINTN |
| (EFIAPI *UNI_VSPRINT_ASCII) ( |
| OUT CHAR16 *StartOfBuffer, |
| IN UINTN BufferSize, |
| IN CONST CHAR8 *FormatString, |
| IN VA_LIST Marker |
| );
|
|
|
| typedef
|
| UINTN |
| (EFIAPI *VALUE_TO_UNISTRING) ( |
| IN OUT CHAR16 *Buffer, |
| IN UINTN Flags, |
| IN INT64 Value, |
| IN UINTN Width |
| );
|
|
|
| typedef
|
| UINTN |
| (EFIAPI *ASCII_VSPRINT) ( |
| OUT CHAR8 *StartOfBuffer, |
| IN UINTN BufferSize, |
| IN CONST CHAR8 *FormatString, |
| IN VA_LIST Marker |
| );
|
|
|
| typedef
|
| UINTN |
| (EFIAPI *ASCII_VSPRINT_UNI) ( |
| OUT CHAR8 *StartOfBuffer, |
| IN UINTN BufferSize, |
| IN CONST CHAR16 *FormatString, |
| IN VA_LIST Marker |
| );
|
|
|
| typedef
|
| UINTN |
| (EFIAPI *VALUE_TO_ASCIISTRING) ( |
| IN OUT CHAR8 *Buffer, |
| IN UINTN Flags, |
| IN INT64 Value, |
| IN UINTN Width |
| );
|
|
|
| struct _EFI_PRINT_PROTOCOL {
|
| UNI_VSPRINT VSPrint;
|
| UNI_VSPRINT_ASCII UniVSPrintAscii;
|
| VALUE_TO_UNISTRING UniValueToString;
|
| ASCII_VSPRINT AsciiVSPrint;
|
| ASCII_VSPRINT_UNI AsciiVSPrintUni;
|
| VALUE_TO_ASCIISTRING AsciiValueToString;
|
| };
|
|
|
| extern EFI_GUID gEfiPrintProtocolGuid;
|
|
|
| #endif
|