update tizen source
[framework/messaging/msg-service.git] / plugin / mms_plugin / include / MmsPluginWmLngPack.h
1 /*
2 *
3 * Copyright (c) 2000-2012 Samsung Electronics Co., Ltd. All Rights Reserved.
4 *
5 * This file is part of msg-service.
6 *
7 * Contact: Jaeyun Jeong <jyjeong@samsung.com>
8 *          Sangkoo Kim <sangkoo.kim@samsung.com>
9 *          Seunghwan Lee <sh.cat.lee@samsung.com>
10 *          SoonMin Jung <sm0415.jung@samsung.com>
11 *          Jae-Young Lee <jy4710.lee@samsung.com>
12 *          KeeBum Kim <keebum.kim@samsung.com>
13 *
14 * PROPRIETARY/CONFIDENTIAL
15 *
16 * This software is the confidential and proprietary information of
17 * SAMSUNG ELECTRONICS ("Confidential Information"). You shall not
18 * disclose such Confidential Information and shall use it only in
19 * accordance with the terms of the license agreement you entered
20 * into with SAMSUNG ELECTRONICS.
21 *
22 * SAMSUNG make no representations or warranties about the suitability
23 * of the software, either express or implied, including but not limited
24 * to the implied warranties of merchantability, fitness for a particular
25 * purpose, or non-infringement. SAMSUNG shall not be liable for any
26 * damages suffered by licensee as a result of using, modifying or
27 * distributing this software or its derivatives.
28 *
29 */
30
31 #ifndef _MMS_PLUGIN_WM_LNG_PACK_H_
32 #define _MMS_PLUGIN_WM_LNG_PACK_H_
33
34 #include "MmsPluginMessage.h"
35
36 #ifdef __cplusplus
37 extern "C" {
38 #endif /* __cplusplus */
39
40
41 #define LOCALCODE_BYTE_MAX      3
42
43 #define WmSizeof(size)          \
44                 sizeof(size)/2
45
46 /* Code Convert */
47 bool  WmConvert2PCode( MCHAR* pmszOutText, int outBufSize, char* szInText);
48 bool  WmConvert2LCode( char* pszOutText, int outBufSize, MCHAR* mszInText);
49 bool  WmConvert2PCodeN( MCHAR* pmszOutText, int outBufSize, char*  szInText, int byteCount );
50 bool  WmConvert2LCodeN( char* pszOutText, int outBufSize, MCHAR* mszInText, int charCount );
51 bool  WmConvertPCode2UTF( UCHAR *pszOutText, int outBufSize, MCHAR *mszInText, int charCount );
52 bool  WmConvertUTF2PCode( MCHAR *pmszOutText,int outBufSize, UCHAR *szInText, int byteCount );
53 int   WmGetLCodeSize( MCHAR * mszText );
54 int   WmGetLCodeSizeN( MCHAR *mszText, int charCount );
55 bool  WmConvertLatinCode2PCode( MCHAR* pmszOutText, int outBufSize, char*  szInText);
56 bool  WmConvertLatinCode2PCodeN( MCHAR* pmszOutText, int outBufSize, char*  szInText, int charCount );
57
58
59 /* latin2 <-> PCode */
60 bool    WmConvertLatin2Code2PCode( MCHAR* pmszOutText, int outBufSize, char*  szInText);
61
62 /* latin3 <-> PCode */
63 bool    WmConvertLatin3Code2PCode( MCHAR* pmszOutText, int outBufSize, char*  szInText);
64
65 /* latin4 <-> PCode */
66 bool    WmConvertLatin4Code2PCode( MCHAR* pmszOutText, int outBufSize, char*  szInText);
67
68 /* latin8 <-> PCode */
69 bool    WmConvertLatin8Code2PCode( MCHAR* pmszOutText, int outBufSize, char*  szInText);
70
71 /* latin15 <-> PCode */
72 bool    WmConvertLatin15Code2PCode( MCHAR* pmszOutText, int outBufSize, char*  szInText);
73
74 /* latin5 <-> PCode */
75 bool    WmConvertLatin5Code2PCode( MCHAR* pmszOutText, int outBufSize, char*  szInText);
76
77 /* win1251 <-> PCode */
78 bool    WmConvertWin1251Code2PCode( MCHAR* pmszOutText, int outBufSize, char*  szInText);
79
80 /* Koi8-r <-> PCode */
81 bool    WmConvertKoi8rCode2PCode( MCHAR* pmszOutText, int outBufSize, char*  szInText);
82
83 /* Koi8-u <-> PCode */
84 bool    WmConvertKoi8uCode2PCode( MCHAR* pmszOutText, int outBufSize, char*  szInText);
85
86
87 /* String Handling */
88 int     WmStrlen( const MCHAR* mszInText );
89 int     WmStrncmp( const MCHAR* mszInText1, const MCHAR* mszInText2, UINT charCount );
90
91
92 int WmGetLatin32UTFCodeSize( unsigned char* szSrc, int nChar ); //ISO 8859-3
93 int WmGetLatin42UTFCodeSize( unsigned char* szSrc, int nChar ); //ISO 8859-4
94 int WmGetLatin82UTFCodeSize( unsigned char* szSrc, int nChar ); //ISO 8859-8
95 int WmGetLatin152UTFCodeSize( unsigned char* szSrc, int nChar ); //ISO 8859-15
96 int WmGetLatin52UTFCodeSize( unsigned char* szSrc, int nChar ); //ISO 8859-9
97
98
99 bool __WmConvertCodeBufferSizeCheck( char* ftnName, int outBufSize, int requiredBufSize );
100 bool _WmT9ChangeUniToGSMCode( MCHAR* pmszOutText, MCHAR* mszInText, int length );
101
102 #ifdef __cplusplus
103 }
104 #endif /* __cplusplus */
105
106 #endif /* _WM_LNG_PACK_H_ */
107
108