sl@0: /*
sl@0: * Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
sl@0: * All rights reserved.
sl@0: * This component and the accompanying materials are made available
sl@0: * under the terms of "Eclipse Public License v1.0"
sl@0: * which accompanies this distribution, and is available
sl@0: * at the URL "http://www.eclipse.org/legal/epl-v10.html".
sl@0: *
sl@0: * Initial Contributors:
sl@0: * Nokia Corporation - initial contribution.
sl@0: *
sl@0: * Contributors:
sl@0: *
sl@0: * Description: 
sl@0: *
sl@0: */
sl@0: 
sl@0: 
sl@0: #ifndef __CHCNVPANIC_H__
sl@0: #define __CHCNVPANIC_H__
sl@0: 
sl@0: #include "e32std.h"
sl@0: 
sl@0: enum TPanic
sl@0: 	{
sl@0: 	EPanicDestructionDuringConversion=1,
sl@0: 	EPanicBadTlsDataReferenceCount,
sl@0: 	EPanicNoTlsData,
sl@0: 	EPanicBadToggleOfCurrentCharacterSetConverter,
sl@0: 	EPanicPastEndOfFile,
sl@0: 	EPanicNotPastFlagPoleForReAllocation,
sl@0: 	EPanicReAllocatedCellMoved,
sl@0: 	EPanicNegativeNumberOfBytes,
sl@0: 	EPanicInconsistentFileReader1,
sl@0: 	EPanicInconsistentFileReader2,
sl@0: 	EPanicInconsistentFileReader3,
sl@0: 	EPanicInconsistentFileReader4,
sl@0: 	EPanicInconsistentFileReader5,
sl@0: 	EPanicInconsistentFileReader6,
sl@0: 	EPanicInconsistentFileReader7,
sl@0: 	EPanicInconsistentFileReader8,
sl@0: 	EPanicInconsistentFileReader9,
sl@0: 	EPanicInconsistentFileReader10,
sl@0: 	EPanicInconsistentFileReader11,
sl@0: 	EPanicInconsistentFileReader12,
sl@0: 	EPanicInconsistentFileReader13,
sl@0: 	EPanicInconsistentFileReader14,
sl@0: 	EPanicInconsistentFileReader15,
sl@0: 	EPanicInconsistentFileReader16,
sl@0: 	EPanicInconsistentFileReader17,
sl@0: 	EPanicInconsistentFileReader18,
sl@0: 	EPanicNegativeBufferLength1,
sl@0: 	EPanicNegativeBufferLength2,
sl@0: 	EPanicCharacterSetAlreadyAdded,
sl@0: 	EPanicNotInitialisedToNull1,
sl@0: 	EPanicNotInitialisedToNull2,
sl@0: 	EPanicCharacterSetsNotSorted,
sl@0: 	EPanicNotInitialisedToZero1,
sl@0: 	EPanicNotInitialisedToZero2,
sl@0: 	EPanicPointerPastUpperLimit1,
sl@0: 	EPanicPointerPastUpperLimit2,
sl@0: 	EPanicPointerPastUpperLimit3,
sl@0: 	EPanicPointerPastUpperLimit4,
sl@0: 	EPanicPointerPastUpperLimit5,
sl@0: 	EPanicPointerPastUpperLimit6,
sl@0: 	EPanicPointerPastUpperLimit7,
sl@0: 	EPanicPointerPastUpperLimit8,
sl@0: 	EPanicPointerPastUpperLimit9,
sl@0: 	EPanicPointerPastUpperLimit10,
sl@0: 	EPanicPointerPastUpperLimit11,
sl@0: 	EPanicPointerPastUpperLimit12,
sl@0: 	EPanicPointerPastUpperLimit13,
sl@0: 	EPanicPointerPastUpperLimit14,
sl@0: 	EPanicPointerPastUpperLimit15,
sl@0: 	EPanicPointerPastUpperLimit16,
sl@0: 	EPanicPointerPastUpperLimit17,
sl@0: 	EPanicPointerPastUpperLimit18,
sl@0: 	EPanicPointerPastUpperLimit19,
sl@0: 	EPanicPointerPastUpperLimit20,
sl@0: 	EPanicPointerPastUpperLimit21,
sl@0: 	EPanicPointerPastUpperLimit22,
sl@0: 	EPanicPointerPastUpperLimit23,
sl@0: 	EPanicPointerPastUpperLimit24,
sl@0: 	EPanicPointerPastUpperLimit25,
sl@0: 	EPanicBadDefaultEndiannessOfForeignCharacters,
sl@0: 	EPanicBadDowngradeForExoticLineTerminatingCharacters1,
sl@0: 	EPanicBadDowngradeForExoticLineTerminatingCharacters2,
sl@0: 	EPanicNullCharacterSetIdentifier1,
sl@0: 	EPanicNullCharacterSetIdentifier2,
sl@0: 	EPanicNullCharacterSetIdentifier3,
sl@0: 	EPanicNameIsNotFileName,
sl@0: 	EPanicNotReachedEndOfFile,
sl@0: 	EPanicNoReplacementForUnconvertibleUnicodeCharacters,
sl@0: 	EPanicNoConversionData1,
sl@0: 	EPanicNoConversionData2,
sl@0: 	EPanicInputCharacterCodeNotInRange,
sl@0: 	EPanicZeroOffset1,
sl@0: 	EPanicZeroOffset2,
sl@0: 	EPanicEmptyKeyedTable1616,
sl@0: 	EPanicEmptyKeyedTable3232,
sl@0: 	EPanicBadIndices1,
sl@0: 	EPanicBadIndices2,
sl@0: 	EPanicEmptyKeyedTable16OfIndexedTables16,
sl@0: 	EPanicEmptyKeyedTable32OfIndexedTables32,
sl@0: 	EPanicBadAlgorithm1,
sl@0: 	EPanicBadAlgorithm2,
sl@0: 	EPanicNullPointer1,
sl@0: 	EPanicNullPointer2,
sl@0: 	EPanicCrossedPointers,
sl@0: 	EPanicBadNumberOfRanges1,
sl@0: 	EPanicBadNumberOfRanges2,
sl@0: 	EPanicBadNumberOfRanges3,
sl@0: 	EPanicBadNumberOfRanges4,
sl@0: 	EPanicBadNumberOfRanges5,
sl@0: 	EPanicPointerPastLowerLimit1,
sl@0: 	EPanicPointerPastLowerLimit2,
sl@0: 	EPanicBadNon16BitCharacterCode1,
sl@0: 	EPanicBadNon16BitCharacterCode2,
sl@0: 	EPanicBadSizeOfForeignOutputCharacterCode,
sl@0: 	EPanicBadEndianness1,
sl@0: 	EPanicBadEndianness2,
sl@0: 	EPanicBadEndianness3,
sl@0: 	EPanicBadNumberOfRemainingForeignBytes1,
sl@0: 	EPanicBadNumberOfRemainingForeignBytes2,
sl@0: 	EPanicBadNumberOfSubsequentBytes,
sl@0: 	EPanicBadIndex,
sl@0: 	EPanicDuplicateIndexOrNotAscending,
sl@0: 	EPanicBadNumberOfUnconvertibleCharacters,
sl@0: 	EPanicCharacterSetNotPresent,
sl@0: 	EPanicCharacterSetConverterNotDestroyed,	
sl@0:  	EPanicNullCharacterSetIdentifier4,			
sl@0:  	EPanicCharacterSetConverterNotLoaded
sl@0: 	};
sl@0: 
sl@0: _LIT(KLitPanicText, "CHARCONV");
sl@0: 
sl@0: inline void Panic(TPanic aPanic)
sl@0: 	{
sl@0: 	User::Panic(KLitPanicText, aPanic);
sl@0: 	}
sl@0: 
sl@0: #endif //__CHCNVPANIC_H__