epoc32/include/shiftjis.h
branchSymbian3
changeset 4 837f303aceeb
parent 3 e1b950c65cb4
equal deleted inserted replaced
3:e1b950c65cb4 4:837f303aceeb
     1 // Copyright (c) 2000-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 //
       
    15 
       
    16 #if !defined(__SHIFTJIS_H__)
       
    17 #define __SHIFTJIS_H__
       
    18 
       
    19 #if !defined(__E32STD_H__)
       
    20 #include <e32std.h>
       
    21 #endif
       
    22 
       
    23 #if !defined(__CHARCONV_H__)
       
    24 #include <charconv.h>
       
    25 #endif
       
    26 
       
    27 #if !defined(__CONVUTILS_H__)
       
    28 #include <convutils.h>
       
    29 #endif
       
    30 
       
    31 class CnvShiftJis 
       
    32 /**
       
    33 only to be used by CHARCONV plug-in DLLs and by locale-DLLs (Locl::FatUtilityFunctions)
       
    34 @internalComponent
       
    35 */
       
    36 	{
       
    37 public:
       
    38 	IMPORT_C static const TDesC8& ReplacementForUnconvertibleUnicodeCharacters();
       
    39 	IMPORT_C static TInt ConvertFromUnicode(CCnvCharacterSetConverter::TEndianness aDefaultEndiannessOfForeignCharacters, 
       
    40 	                                        const TDesC8& aReplacementForUnconvertibleUnicodeCharacters, 
       
    41 	                                        TDes8& aForeign, const TDesC16& aUnicode, 
       
    42 	                                        CCnvCharacterSetConverter::TArrayOfAscendingIndices& aIndicesOfUnconvertibleCharacters);
       
    43 	                                        
       
    44 	IMPORT_C static TInt ConvertFromUnicode(CCnvCharacterSetConverter::TEndianness aDefaultEndiannessOfForeignCharacters, 
       
    45 	                                        const TDesC8& aReplacementForUnconvertibleUnicodeCharacters, 
       
    46 	                                        TDes8& aForeign, const TDesC16& aUnicode, 
       
    47 	                                        CCnvCharacterSetConverter::TArrayOfAscendingIndices& aIndicesOfUnconvertibleCharacters,
       
    48 	                                        const TArray<CnvUtilities::SCharacterSet>& aArrayOfAdditionalCharacterSets);
       
    49 	                                        
       
    50 	IMPORT_C static TInt ConvertToUnicode(CCnvCharacterSetConverter::TEndianness aDefaultEndiannessOfForeignCharacters, 
       
    51 	                                      TDes16& aUnicode, const TDesC8& aForeign, 
       
    52 	                                      TInt& aNumberOfUnconvertibleCharacters, 
       
    53 	                                      TInt& aIndexOfFirstByteOfFirstUnconvertibleCharacter);
       
    54 	                                      
       
    55 	IMPORT_C static TInt ConvertToUnicode(CCnvCharacterSetConverter::TEndianness aDefaultEndiannessOfForeignCharacters, 
       
    56 	                                      TDes16& aUnicode, const TDesC8& aForeign, 
       
    57 	                                      TInt& aNumberOfUnconvertibleCharacters, 
       
    58 	                                      TInt& aIndexOfFirstByteOfFirstUnconvertibleCharacter, 
       
    59 	                                      const TArray<CnvUtilities::SMethod>& aArrayOfAdditionalMethods);
       
    60 	
       
    61 private:
       
    62 
       
    63 	static TInt DoConvertToUnicode(TDes16& aUnicode, const TDesC8& aForeign, 
       
    64 	                               TInt& aNumberOfUnconvertibleCharacters, 
       
    65 	                               TInt& aIndexOfFirstByteOfFirstUnconvertibleCharacter) ;
       
    66 	                               
       
    67     static TInt DoConvertFromUnicode(const TDesC8& aReplacementForUnconvertibleUnicodeCharacters, 
       
    68                                      TDes8& aForeign, const TDesC16& aUnicode, CCnvCharacterSetConverter::TArrayOfAscendingIndices& aIndicesOfUnconvertibleCharacters) ;
       
    69 	};
       
    70 
       
    71 
       
    72 /** 
       
    73 Returns the single character (as one or more byte values) which is used by 
       
    74 default as the replacement for unconvertible Unicode characters. These byte 
       
    75 values are output when converting from Unicode into a foreign character set 
       
    76 for each Unicode character that has no equivalent in the foreign character 
       
    77 set.
       
    78 
       
    79 @return The single character which is used to replace unconvertible characters. 
       
    80 @publishedAll
       
    81 @released
       
    82 */
       
    83 GLREF_C const TDesC8& ReplacementForUnconvertibleUnicodeCharacters_internal();
       
    84 	
       
    85 #endif