diff -r e1b950c65cb4 -r 837f303aceeb epoc32/include/mw/senpointermap.h --- a/epoc32/include/mw/senpointermap.h Wed Mar 31 12:27:01 2010 +0100 +++ b/epoc32/include/mw/senpointermap.h Wed Mar 31 12:33:34 2010 +0100 @@ -1,20 +1,23 @@ /* -* Copyright (c) 2002-2005 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2002-2005 Nokia Corporation and/or its subsidiary(-ies). * All rights reserved. * This component and the accompanying materials are made available -* 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 +* under the terms of "Eclipse Public License v1.0" * which accompanies this distribution, and is available -* at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". +* at the URL "http://www.eclipse.org/legal/epl-v10.html". * * Initial Contributors: * Nokia Corporation - initial contribution. * * Contributors: * -* Description: Pointermap class declaration +* Description: Pointermap class declaration * */ + + + #ifndef POINTERMAP_H #define POINTERMAP_H @@ -58,8 +61,8 @@ TInt Find(const K& aKey) const { - TInt index = KErrNotFound; - for (int i = 0; i < iKeys.Count(); i++) + TInt index( KErrNotFound ); + for (TInt i = 0; i < iKeys.Count(); i++) { if (*iKeys[i] == aKey) { @@ -70,6 +73,28 @@ return index; } + TInt FindReverse(const K& aKey) const + { + TInt index( KErrNotFound ); + TInt count( iKeys.Count() ); + for (TInt i = count-1; i >=0 ; i--) + { + if (*iKeys[i] == aKey) + { + index = i; + break; + } + } + return index; + } + + + TInt RemoveAt( TInt aIndex ) + { + K* key = KeyAt( aIndex ); + return RemoveByKey( *key ); + } + // @return the index of removed key-value pair, or // KErrNotFound, if such key was not found TInt RemoveByKey(const K& aKey) @@ -119,7 +144,7 @@ TInt FindValue(const V& aValue) const { TInt index = KErrNotFound; - for (int i = 0; i < iValues.Count(); i++) + for (TInt i = 0; i < iValues.Count(); i++) { if ((iValues[i]) && (*iValues[i] == aValue)) {