1 #ifndef CLIB_CODESETS_PROTOS_H
2 #define CLIB_CODESETS_PROTOS_H
4 /***************************************************************************
6 codesets.library - Amiga shared library for handling different codesets
7 Copyright (C) 2001-2005 by Alfonso [alfie] Ranieri <alforan@tin.it>.
8 Copyright (C) 2005-2014 codesets.library Open Source Team
10 This library is free software; you can redistribute it and/or
11 modify it under the terms of the GNU Lesser General Public
12 License as published by the Free Software Foundation; either
13 version 2.1 of the License, or (at your option) any later version.
15 This library is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 Lesser General Public License for more details.
20 codesets.library project: http://sourceforge.net/projects/codesetslib/
24 ***************************************************************************/
26 #ifndef LIBRARIES_CODESETS_H
27 #include <libraries/codesets.h>
30 STRPTR
*CodesetsSupportedA(struct TagItem
*attrs
);
31 STRPTR
*CodesetsSupported(Tag tag1
, ...);
32 void CodesetsFreeA(APTR obj
, struct TagItem
*attrs
);
33 void CodesetsFree(APTR obj
, Tag tag1
, ...);
34 struct codeset
*CodesetsSetDefaultA(STRPTR name
, struct TagItem
*attrs
);
35 struct codeset
*CodesetsSetDefault(STRPTR name
, Tag tag1
, ...);
36 struct codeset
*CodesetsFindA(STRPTR name
, struct TagItem
*attrs
);
37 struct codeset
*CodesetsFind(STRPTR name
, Tag tag1
, ...);
38 struct codeset
*CodesetsFindBestA(struct TagItem
*attrs
);
39 struct codeset
*CodesetsFindBest(Tag tag1
, ...);
40 ULONG
CodesetsUTF8Len(const UTF8
*str
);
41 ULONG
CodesetsStrLenA(STRPTR str
, struct TagItem
*attrs
);
42 ULONG
CodesetsStrLen(STRPTR str
, Tag tag1
, ...);
43 STRPTR
CodesetsUTF8ToStrA(struct TagItem
*attrs
);
44 STRPTR
CodesetsUTF8ToStr(Tag tag1
, ...);
45 UTF8
*CodesetsUTF8CreateA(struct TagItem
*attrs
);
46 UTF8
*CodesetsUTF8Create(Tag tag1
, ...);
47 BOOL
CodesetsIsValidUTF8(STRPTR str
);
48 void CodesetsFreeVecPooledA(APTR pool
, APTR mem
, struct TagItem
*attrs
);
49 void CodesetsFreeVecPooled(APTR pool
, APTR mem
, Tag tag1
, ...);
50 STRPTR
CodesetsConvertStrA(struct TagItem
*attrs
);
51 STRPTR
CodesetsConvertStr(Tag tag1
, ...);
52 struct codesetList
*CodesetsListCreateA(struct TagItem
*attrs
);
53 struct codesetList
*CodesetsListCreate(Tag tag1
, ...);
54 BOOL
CodesetsListDeleteA(struct TagItem
*attrs
);
55 BOOL
CodesetsListDelete(Tag tag1
, ...);
56 BOOL
CodesetsListAddA(struct codesetList
*csList
, struct TagItem
*attrs
);
57 BOOL
CodesetsListAdd(struct codesetList
*csList
, ...);
58 BOOL
CodesetsListRemoveA(struct TagItem
*attrs
);
59 BOOL
CodesetsListRemove(Tag tag1
, ...);
61 ULONG
CodesetsConvertUTF32toUTF16(const UTF32
**sourceStart
, const UTF32
*sourceEnd
, UTF16
**targetStart
, UTF16
*targetEnd
, ULONG flags
);
62 ULONG
CodesetsConvertUTF16toUTF32(const UTF16
**sourceStart
, const UTF16
*sourceEnd
, UTF32
**targetStart
, UTF32
*targetEnd
, ULONG flags
);
63 ULONG
CodesetsConvertUTF16toUTF8(const UTF16
**sourceStart
, const UTF16
*sourceEnd
, UTF8
**targetStart
, UTF8
*targetEnd
, ULONG flags
);
64 BOOL
CodesetsIsLegalUTF8(const UTF8
*source
, ULONG length
);
65 BOOL
CodesetsIsLegalUTF8Sequence(const UTF8
*source
, const UTF8
*sourceEnd
);
66 ULONG
CodesetsConvertUTF8toUTF16(const UTF8
**sourceStart
, const UTF8
*sourceEnd
, UTF16
**targetStart
, UTF16
*targetEnd
, ULONG flags
);
67 ULONG
CodesetsConvertUTF32toUTF8(const UTF32
**sourceStart
, const UTF32
*sourceEnd
, UTF8
**targetStart
, UTF8
*targetEnd
, ULONG flags
);
68 ULONG
CodesetsConvertUTF8toUTF32(const UTF8
**sourceStart
, const UTF8
*sourceEnd
, UTF32
**targetStart
, UTF32
*targetEnd
, ULONG flags
);
70 ULONG
CodesetsEncodeB64A(struct TagItem
*attrs
);
71 ULONG
CodesetsEncodeB64(Tag tag1
, ...);
72 ULONG
CodesetsDecodeB64A(struct TagItem
*attrs
);
73 ULONG
CodesetsDecodeB64(Tag tag1
, ...);
75 #endif /* CLIB_CODESETS_PROTOS_H */