diff -r c84cf270c54f -r 92ab7f8d0eab phoneengine/contacthandling2/inc/cpecontacthandling.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/phoneengine/contacthandling2/inc/cpecontacthandling.h Fri Mar 19 09:28:42 2010 +0200 @@ -0,0 +1,157 @@ +/* +* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: This file contains the header file of the +* : CPEContactHandling class. +* +*/ + + +#ifndef CPECONTACTHANDLING_H +#define CPECONTACTHANDLING_H + +// INCLUDES +#include "mpecontacthandling.h" +#include +#include // TContactItemId +#include + +// CONSTANTS +//None + +// MACROS +//None + +// DATA TYPES +//None. + +// FUNCTION PROTOTYPES +//None + +// FORWARD DECLARATIONS +class CContactGroup; +class CContactItemFieldDef; +class MPEPhoneModelInternal; +class CPEContactMatch; + +// CLASS DECLARATION + +/** +* Interface class for phone engine to fetch remote info from contact database or SIM +* +* @lib ContactHandling.lib +* @since Series60_4.0 +*/ +class CPEContactHandling + : public CBase, + public MPEContactHandling + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + */ + static CPEContactHandling* NewL( MPEPhoneModelInternal& aModel, + RFs& aFsSession ); + + /** + * Destructor. + */ + virtual ~CPEContactHandling(); + + public: // New functions + + /** + * Synchronous method for searching contact information. This function call's FindContactInfoSyncL() + * which can leave. This function call is Trapped so API function does not leave. + * @param aCallId call id from phone engine + * @param aFindKey defines the key to search the contact data with + * @return Error code indicating the success of the search + */ + TInt FindContactInfoSync( + const TInt aCallId, + const TPEFindContactKey aFindKey ); + + /** + * Reroutes errorCodes to the Phone Model + * @param aErrorCode is the errorCode + * @return None. + */ + void SendErrorMessage( TInt aErrorCode ); + + /** + * Reroutes messages to the Phone Model + * @param aMessage is the message id + * @param aCallId identifies the call this event is associated to + */ + void SendMessage( MEngineMonitor::TPEMessagesFromPhoneEngine aMessage, + const TInt aCallId = KPECallIdNotUsed ); + + /** + * Fetch number from speed dial location + * @param aLocationIndex Index to look for + * @param aNumber Filled with speed dial location phone number + * @return Error code. + */ + TInt GetSpeedDialLocation( + TInt aLocationIndex, + TPEPhoneNumber& aNumber ); + + protected: // New functions + + /** + * C++ default constructor. + */ + CPEContactHandling( MPEPhoneModelInternal& aModel, + RFs& aFsSession ); + + private: + + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(); + + + /** + * Synchronous method for searching contact information + * @param aCallId call id from phone engine + * @param aFindKey defines the key to search the contact data with + */ + + void FindContactInfoSyncL( + const TInt aCallId, + const TPEFindContactKey aFindKey ); + + /** + * Synchronous method for searching contact information from Contactdb + * @param aFindKey defines the key to search the contact data with + * @return None + */ + void FindContactInfoSyncFromContactDbL( + const TInt aCallId, + const TPEFindContactKey aFindKey ) const; + + private: // Data + // Reference to MPEPhoneModelInternal , also object owner + MPEPhoneModelInternal& iModel; + // ContactMatcher + CPEContactMatch* iContactMatcher; + // handle to a file server session + RFs& iFsSession; + + }; + +#endif // CPECONTACTHANDLING_H + +// End of File