mirror of https://github.com/acidanthera/audk.git
100 lines
2.2 KiB
C
100 lines
2.2 KiB
C
/*++
|
|
|
|
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
|