2 * Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
14 * Description: Phonebook 2 field property array interface.
19 #ifndef MPBK2FIELDPROPERTYARRAY_H
20 #define MPBK2FIELDPROPERTYARRAY_H
25 // FORWARD DECLARATIONS
26 class MPbk2FieldProperty;
29 //Use this UID to access field property array extension 2. Used as a parameter
30 //to FieldPropertyArrayExtension() method.
31 const TUid KMPbk2FieldPropertyArrayExtension2Uid = { 2 };
34 * Phonebook 2 field property array interface.
36 * @see MPbk2FieldProperty
38 class MPbk2FieldPropertyArray
45 virtual ~MPbk2FieldPropertyArray()
49 * Returns a property for the field type or NULL.
51 * @param aFieldType The field type whose property is
53 * @return A field property for the field type
54 * or NULL if not found.
56 virtual const MPbk2FieldProperty* FindProperty(
57 const MVPbkFieldType& aFieldType ) const = 0;
60 * Returns the number of properties in the array.
62 * @return Number of properties in the array.
64 virtual TInt Count() const = 0;
67 * Returns the property at given index.
69 * @param aIndex The index of the property.
70 * @return Property at given index.
72 virtual const MPbk2FieldProperty& At(
73 TInt aIndex ) const = 0;
76 * Returns an extension point for this interface or NULL.
78 * @param aExtensionUid Extension UID.
79 * @return Extension point.
81 virtual TAny* FieldPropertyArrayExtension(
82 TUid /*aExtensionUid*/ )
88 #endif // MPBK2FIELDPROPERTYARRAY_H