annotate src/libguess/libguess.h @ 4843:ca837b93ad0f

Fix "audacious -p" crash and failing to play on startup
author John Lindgren <john.lindgren@tds.net>
date Fri, 10 Apr 2009 20:02:45 -0400
parents ce2d24746c09
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2313
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
1 /*
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
2 * This code is derivative of guess.c of Gauche-0.8.3.
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
3 * The following is the original copyright notice.
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
4 */
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
5
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
6 /*
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
7 * Copyright (c) 2000-2003 Shiro Kawai, All rights reserved.
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
8 *
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
9 * Redistribution and use in source and binary forms, with or without
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
10 * modification, are permitted provided that the following conditions
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
11 * are met:
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
12 *
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
13 * 1. Redistributions of source code must retain the above copyright
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
14 * notice, this list of conditions and the following disclaimer.
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
15 *
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
16 * 2. Redistributions in binary form must reproduce the above copyright
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
17 * notice, this list of conditions and the following disclaimer in the
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
18 * documentation and/or other materials provided with the distribution.
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
19 *
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
20 * 3. Neither the name of the authors nor the names of its contributors
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
21 * may be used to endorse or promote products derived from this
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
22 * software without specific prior written permission.
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
23 *
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
25 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
26 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
27 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
28 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
29 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
30 * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
31 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
32 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
33 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
34 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
35 *
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
36 */
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
37
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
38 #ifndef _LIBGUESS_H
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
39 #define _LIBGUESS_H 1
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
40
3202
e9f66c3905ec Migrate relevant libRCD code to libguess.
William Pitcock <nenolod@atheme-project.org>
parents: 3201
diff changeset
41 #include <stdlib.h>
e9f66c3905ec Migrate relevant libRCD code to libguess.
William Pitcock <nenolod@atheme-project.org>
parents: 3201
diff changeset
42 #include <string.h>
e9f66c3905ec Migrate relevant libRCD code to libguess.
William Pitcock <nenolod@atheme-project.org>
parents: 3201
diff changeset
43
2313
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
44 /* prototypes */
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
45 const char *guess_jp(const char *buf, int buflen);
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
46 const char *guess_tw(const char *buf, int buflen);
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
47 const char *guess_cn(const char *buf, int buflen);
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
48 const char *guess_kr(const char *buf, int buflen);
3202
e9f66c3905ec Migrate relevant libRCD code to libguess.
William Pitcock <nenolod@atheme-project.org>
parents: 3201
diff changeset
49 const char *guess_ru(const char *buf, int buflen);
3206
6bcfc6561711 Implement support for Arabic and Turkish.
William Pitcock <nenolod@atheme-project.org>
parents: 3202
diff changeset
50 const char *guess_ar(const char *buf, int buflen);
6bcfc6561711 Implement support for Arabic and Turkish.
William Pitcock <nenolod@atheme-project.org>
parents: 3202
diff changeset
51 const char *guess_tr(const char *buf, int buflen);
3215
ce2d24746c09 Add support for greek and hebrew character set detection.
William Pitcock <nenolod@atheme-project.org>
parents: 3211
diff changeset
52 const char *guess_gr(const char *buf, int buflen);
ce2d24746c09 Add support for greek and hebrew character set detection.
William Pitcock <nenolod@atheme-project.org>
parents: 3211
diff changeset
53 const char *guess_hw(const char *buf, int buflen);
2559
b474ecb5bde4 [svn] revise str_to_utf8():
yaz
parents: 2313
diff changeset
54 int dfa_validate_utf8(const char *buf, int buflen);
2313
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
55
3201
e1470a536417 Allow libguess to be extended for other languages using a common API.
William Pitcock <nenolod@atheme-project.org>
parents: 2559
diff changeset
56 #define GUESS_REGION_JP "japanese"
e1470a536417 Allow libguess to be extended for other languages using a common API.
William Pitcock <nenolod@atheme-project.org>
parents: 2559
diff changeset
57 #define GUESS_REGION_TW "taiwanese"
e1470a536417 Allow libguess to be extended for other languages using a common API.
William Pitcock <nenolod@atheme-project.org>
parents: 2559
diff changeset
58 #define GUESS_REGION_CN "chinese"
e1470a536417 Allow libguess to be extended for other languages using a common API.
William Pitcock <nenolod@atheme-project.org>
parents: 2559
diff changeset
59 #define GUESS_REGION_KR "korean"
3202
e9f66c3905ec Migrate relevant libRCD code to libguess.
William Pitcock <nenolod@atheme-project.org>
parents: 3201
diff changeset
60 #define GUESS_REGION_RU "russian"
3206
6bcfc6561711 Implement support for Arabic and Turkish.
William Pitcock <nenolod@atheme-project.org>
parents: 3202
diff changeset
61 #define GUESS_REGION_AR "arabic"
3211
f571be95b0b6 Fix typo in libguess.
Alex Maclean <monkeh@monkeh.net>
parents: 3206
diff changeset
62 #define GUESS_REGION_TR "turkish"
3215
ce2d24746c09 Add support for greek and hebrew character set detection.
William Pitcock <nenolod@atheme-project.org>
parents: 3211
diff changeset
63 #define GUESS_REGION_GR "greek"
ce2d24746c09 Add support for greek and hebrew character set detection.
William Pitcock <nenolod@atheme-project.org>
parents: 3211
diff changeset
64 #define GUESS_REGION_HW "hebrew"
3201
e1470a536417 Allow libguess to be extended for other languages using a common API.
William Pitcock <nenolod@atheme-project.org>
parents: 2559
diff changeset
65
e1470a536417 Allow libguess to be extended for other languages using a common API.
William Pitcock <nenolod@atheme-project.org>
parents: 2559
diff changeset
66 const char *guess_encoding(const char *buf, int buflen, const char *lang);
e1470a536417 Allow libguess to be extended for other languages using a common API.
William Pitcock <nenolod@atheme-project.org>
parents: 2559
diff changeset
67 void guess_init(void);
e1470a536417 Allow libguess to be extended for other languages using a common API.
William Pitcock <nenolod@atheme-project.org>
parents: 2559
diff changeset
68 void guess_impl_register(const char *name,
e1470a536417 Allow libguess to be extended for other languages using a common API.
William Pitcock <nenolod@atheme-project.org>
parents: 2559
diff changeset
69 const char *(impl)(const char *buf, int buflen));
e1470a536417 Allow libguess to be extended for other languages using a common API.
William Pitcock <nenolod@atheme-project.org>
parents: 2559
diff changeset
70
2313
3149d4b1a9a9 [svn] - objective-make autodepend fixes
nenolod
parents:
diff changeset
71 #endif