2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * 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
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
14 * Description: Profile name array interface.
20 #ifndef MPROENGPROFILENAMEARRAY_H
21 #define MPROENGPROFILENAMEARRAY_H
24 #include <BAMDESCA.H> // MDesCArray
26 // FORWARD DECLARATIONS
27 class MProEngProfileName;
28 class MProEngProfileNameArrayExt;
33 * Profile name array interface.
36 * Get profile names array with MProEngEngine::ProfileNameArrayLC().
38 * MProEngProfileNameArray* nameArray =
39 * iProfileEngine->ProfileNameArrayLC();
42 * @lib ProfileEngine.lib
45 class MProEngProfileNameArray : public MDesCArray
47 public: // New functions
50 * Return the ID of the profile in the given array index.
52 * @param aIndex index of the profile.
53 * @return Return the ID of the profile in the given array index.
54 * KErrNotFound if the index is out of bounds.
56 virtual TInt ProfileId( TInt aIndex ) const = 0;
59 * Find profile index by ID of the profile.
61 * @param aId ID of the profile.
62 * @return Return index of the profile. KErrNotFound if
63 * profile isn't found.
65 virtual TInt FindById( TInt aId ) const = 0;
68 * Find profile index by name of the profile.
70 * @param aProfileName name of the profile.
71 * @return Return index of the profile. KErrNotFound if
72 * profile isn't found.
74 virtual TInt FindByName( const TDesC& aProfileName ) const = 0;
76 private: // Extension interface
79 * This member is internal and not intended for use.
81 virtual MProEngProfileNameArrayExt* Extension() { return NULL; }
85 #endif // MPROENGPROFILENAMEARRAY_H