WinGui: Fix another instance of the Caliburn vs Json.net sillyness where objects...
[HandBrake.git] / libhb / lang.h
blob7e7b82bd596f963fcc855c1029914d60ec9ed45c
1 /* lang.h
3 Copyright (c) 2003-2015 HandBrake Team
4 This file is part of the HandBrake source code
5 Homepage: <http://handbrake.fr/>.
6 It may be used under the terms of the GNU General Public License v2.
7 For full terms see the file COPYING file or visit http://www.gnu.org/licenses/gpl-2.0.html
8 */
10 #ifndef HB_LANG_H
11 #define HB_LANG_H
13 typedef struct iso639_lang_t
15 char * eng_name; /* Description in English */
16 char * native_name; /* Description in native language */
17 char * iso639_1; /* ISO-639-1 (2 characters) code */
18 char * iso639_2; /* ISO-639-2/t (3 character) code */
19 char * iso639_2b; /* ISO-639-2/b code (if different from above) */
21 } iso639_lang_t;
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 /* find language, match any of names in lang struct */
27 const iso639_lang_t * lang_lookup( const char * str );
29 /* find language associated with ISO-639-1 language code */
30 iso639_lang_t * lang_for_code( int code );
32 /* find language associated with ISO-639-2 language code */
33 iso639_lang_t * lang_for_code2( const char *code2 );
35 /* ISO-639-1 code for language */
36 int lang_to_code(const iso639_lang_t *lang);
38 iso639_lang_t * lang_for_english( const char * english );
41 * Get the next language in the list.
42 * Returns NULL if there are no more languages.
43 * Pass NULL to get the first language in the list.
45 const iso639_lang_t* lang_get_next(const iso639_lang_t *last);
47 #ifdef __cplusplus
49 #endif
50 #endif