charconvfw/charconvplugins/inc/shiftjis.h
author Monotype Imaging Inc. <geoff.greve@monotypeimaging.com
Tue, 09 Mar 2010 14:23:10 +0000
branchRCL_3
changeset 8 030b3432fbe0
parent 0 1fb32624e06b
permissions -rw-r--r--
MYuppy TrueType GB2312 font from Monotype Imaging Inc. (Bug 1899) MYuppyGB-Medium Format - TTF TrueType Character set - GB2312 Encoding - Unicode This font was designed to appeal to young urban professionals, Monotype Yuppy is a newly designed typeface with a unique, modern feel. The design combines elements of handwriting with classic letterform characteristics, such as open shapes and proper proportions that help the typeface retain legibility.

/*
* Copyright (c) 2000-2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description: 
*
*/


#if !defined(__SHIFTJIS_H__)
#define __SHIFTJIS_H__

#if !defined(__E32STD_H__)
#include <e32std.h>
#endif

#if !defined(__CHARCONV_H__)
#include <charconv.h>
#endif

#if !defined(__CONVUTILS_H__)
#include <convutils.h>
#endif

class CnvShiftJis 
/**
only to be used by CHARCONV plug-in DLLs and by locale-DLLs (Locl::FatUtilityFunctions)
@internalComponent
*/
	{
public:
	IMPORT_C static const TDesC8& ReplacementForUnconvertibleUnicodeCharacters();
	IMPORT_C static TInt ConvertFromUnicode(CCnvCharacterSetConverter::TEndianness aDefaultEndiannessOfForeignCharacters, 
	                                        const TDesC8& aReplacementForUnconvertibleUnicodeCharacters, 
	                                        TDes8& aForeign, const TDesC16& aUnicode, 
	                                        CCnvCharacterSetConverter::TArrayOfAscendingIndices& aIndicesOfUnconvertibleCharacters);
	                                        
	IMPORT_C static TInt ConvertFromUnicode(CCnvCharacterSetConverter::TEndianness aDefaultEndiannessOfForeignCharacters, 
	                                        const TDesC8& aReplacementForUnconvertibleUnicodeCharacters, 
	                                        TDes8& aForeign, const TDesC16& aUnicode, 
	                                        CCnvCharacterSetConverter::TArrayOfAscendingIndices& aIndicesOfUnconvertibleCharacters,
	                                        const TArray<CnvUtilities::SCharacterSet>& aArrayOfAdditionalCharacterSets);
	                                        
	IMPORT_C static TInt ConvertToUnicode(CCnvCharacterSetConverter::TEndianness aDefaultEndiannessOfForeignCharacters, 
	                                      TDes16& aUnicode, const TDesC8& aForeign, 
	                                      TInt& aNumberOfUnconvertibleCharacters, 
	                                      TInt& aIndexOfFirstByteOfFirstUnconvertibleCharacter);
	                                      
	IMPORT_C static TInt ConvertToUnicode(CCnvCharacterSetConverter::TEndianness aDefaultEndiannessOfForeignCharacters, 
	                                      TDes16& aUnicode, const TDesC8& aForeign, 
	                                      TInt& aNumberOfUnconvertibleCharacters, 
	                                      TInt& aIndexOfFirstByteOfFirstUnconvertibleCharacter, 
	                                      const TArray<CnvUtilities::SMethod>& aArrayOfAdditionalMethods);
	
private:

	static TInt DoConvertToUnicode(TDes16& aUnicode, const TDesC8& aForeign, 
	                               TInt& aNumberOfUnconvertibleCharacters, 
	                               TInt& aIndexOfFirstByteOfFirstUnconvertibleCharacter) ;
	                               
    static TInt DoConvertFromUnicode(const TDesC8& aReplacementForUnconvertibleUnicodeCharacters, 
                                     TDes8& aForeign, const TDesC16& aUnicode, CCnvCharacterSetConverter::TArrayOfAscendingIndices& aIndicesOfUnconvertibleCharacters) ;
	};


/** 
Returns the single character (as one or more byte values) which is used by 
default as the replacement for unconvertible Unicode characters. These byte 
values are output when converting from Unicode into a foreign character set 
for each Unicode character that has no equivalent in the foreign character 
set.

@return The single character which is used to replace unconvertible characters. 
@internalComponent
*/
GLREF_C const TDesC8& ReplacementForUnconvertibleUnicodeCharacters_internal();
	
#endif