/** @file Language setting Copyright (c) 2004 - 2008, 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. **/ #ifndef _LANGUAGE_H_ #define _LANGUAGE_H_ #include "String.h" /** Convert language code from RFC3066 to ISO639-2. @param LanguageRfc3066 RFC3066 language code. @param LanguageIso639 ISO639-2 language code. @retval EFI_SUCCESS Language code converted. @retval EFI_NOT_FOUND Language code not found. **/ EFI_STATUS EFIAPI ConvertRfc3066LanguageToIso639Language ( IN CHAR8 *LanguageRfc3066, OUT CHAR8 *LanguageIso639 ); /** Get next language from language code list (with separator ';'). If LangCode is NULL, then ASSERT. If Lang is NULL, then ASSERT. @param LangCode On input: point to first language in the list. On output: point to next language in the list, or NULL if no more language in the list. @param Lang The first language in the list. **/ VOID EFIAPI GetNextLanguage ( IN OUT CHAR8 **LangCode, OUT CHAR8 *Lang ); /** Determine the current language that will be used based on language related EFI Variables. @param LangCodesSettingRequired If required to set LangCode variable **/ VOID InitializeLanguage ( BOOLEAN LangCodesSettingRequired ); #endif // _LANGUAGE_H_