2 * Copyright (c) 2002-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: Virtual Phonebook field selector interface needed
15 * by e.g. CVPbkFieldFilter.
20 #ifndef MVPBKCONTACTFIELDSELECTOR_H
21 #define MVPBKCONTACTFIELDSELECTOR_H
26 // FORWARD DECLARATIONS
27 class MVPbkBaseContactField;
32 * Virtual Phonebook Contact field selector interface.
33 * This interface can be used to create a selection object, which
34 * can determine which fields belong to the set criteria.
36 class MVPbkContactFieldSelector
40 * Returns true if aField belongs to the set defined by this field
43 * In case field is an IMPP field service name is compared to
44 * existing service installations. Only matched IMPP service
45 * providers are included.
47 * @param aField Contact field to check againt criteria.
48 * @return ETrue if the field is included in the set.
50 virtual TBool IsFieldIncluded(
51 const MVPbkBaseContactField& aField) const =0;
54 * Returns an extension point for this interface or NULL.
55 * @param aExtensionUid Uid of extension
56 * @return Extension point or NULL
58 virtual TAny* ContactFieldSelectorExtension(
59 TUid /*aExtensionUid*/) { return NULL; }
65 virtual ~MVPbkContactFieldSelector() { }
69 #endif // MVPBKCONTACTFIELDSELECTOR_H