Files
system76-edk2/RedfishPkg/Include/Library/BaseUcs2Utf8Lib.h
Michael Kubacki 39de741e2d RedfishPkg: Apply uncrustify changes
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737

Apply uncrustify changes to .c/.h files in the RedfishPkg package

Cc: Andrew Fish <afish@apple.com>
Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Abner Chang <abner.chang@hpe.com>
2021-12-07 17:24:28 +00:00

62 lines
1.8 KiB
C

/** @file
UCS2 to UTF8 manipulation library header file.
Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>
(C) Copyright 2020 Hewlett Packard Enterprise Development LP<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#ifndef BASE_UCS2UTF8_LIB_H_
#define BASE_UCS2UTF8_LIB_H_
///
/// L"\u0000"
///
#define UNICODE_FORMAT_LEN 6
#define UNICODE_FORMAT_CHAR_LEN 2
#define UNICODE_FORMAT_CHAR_SIZE 3
#define UTF8_BUFFER_FOR_UCS2_MAX_SIZE 3
/**
Convert a UCS2 string to a UTF8 encoded string.
@param[in] Ucs2Str The provided UCS2 string.
@param[out] Utf8StrAddr The converted UTF8 string address. Caller
is responsible for Free this string.
@retval EFI_INVALID_PARAMETER One or more parameters are invalid.
@retval EFI_OUT_OF_RESOURCES System runs out of resources.
@retval EFI_SUCCESS The UTF8 encoded string has been converted.
**/
EFI_STATUS
UCS2StrToUTF8 (
IN CHAR16 *Ucs2Str,
OUT CHAR8 **Utf8StrAddr
);
/**
Convert a UTF8 encoded string to a UCS2 string.
@param[in] Utf8Str The provided UTF8 encoded string.
@param[out] Ucs2StrAddr The converted UCS2 string address. Caller
is responsible for Free this string.
@retval EFI_INVALID_PARAMETER The UTF8 encoded string is not valid to
convert to UCS2 string.
One or more parameters are invalid.
@retval EFI_OUT_OF_RESOURCES System runs out of resources.
@retval EFI_SUCCESS The UCS2 string has been converted.
**/
EFI_STATUS
UTF8StrToUCS2 (
IN CHAR8 *Utf8Str,
OUT CHAR16 **Ucs2StrAddr
);
#endif