/** @file\r
- Print Library.\r
+ Print Library Internal Functions.\r
\r
- Copyright (c) 2006, Intel Corporation\r
+ Copyright (c) 2006 - 2007, Intel Corporation\r
All rights reserved. This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
which accompanies this distribution. The full text of the license may be found at\r
#ifndef __PRINT_LIB_INTERNAL_H\r
#define __PRINT_LIB_INTERNAL_H\r
\r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
//\r
// Print primitives\r
//\r
#define LONG_TYPE 0x10\r
//#define PREFIX_ZERO 0x20\r
#define OUTPUT_UNICODE 0x40\r
-#define RADIX_HEX 0x80\r
+//#define RADIX_HEX 0x80\r
#define FORMAT_UNICODE 0x100\r
#define PAD_TO_WIDTH 0x200\r
#define ARGUMENT_UNICODE 0x400\r
UINT8 Pad2;\r
} TIME;\r
\r
+/**\r
+ Worker function that produces a Null-terminated string in an output buffer \r
+ based on a Null-terminated format string and a VA_LIST argument list.\r
+\r
+ VSPrint function to process format and place the results in Buffer. Since a \r
+ VA_LIST is used this rountine allows the nesting of Vararg routines. Thus \r
+ this is the main print working routine.\r
+\r
+ @param Buffer Character buffer to print the results of the parsing\r
+ of Format into.\r
+ @param BufferSize Maximum number of characters to put into buffer.\r
+ @param Flags Intial flags value.\r
+ Can only have FORMAT_UNICODE and OUTPUT_UNICODE set.\r
+ @param Format Null-terminated format string.\r
+ @param Marker Vararg list consumed by processing Format.\r
+\r
+ @return Number of characters printed not including the Null-terminator.\r
+\r
+**/\r
+UINTN\r
+BasePrintLibVSPrint (\r
+ OUT CHAR8 *Buffer,\r
+ IN UINTN BufferSize,\r
+ IN UINTN Flags,\r
+ IN CONST CHAR8 *Format,\r
+ IN VA_LIST Marker\r
+ );\r
+\r
/**\r
Worker function that produces a Null-terminated string in an output buffer \r
based on a Null-terminated format string and variable argument list.\r