epoc32/include/mw/biocmtm.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
     1 // Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 //
    15 
    16 #if !defined(__CIOCMTM_H__)
    17 #define __BIOCMTM_H__
    18 #if !defined(__E32BASE_H__)
    19 #include <e32base.h>
    20 #endif
    21 #if !defined(__MTCLBASE_H__)
    22 #include <mtclbase.h>
    23 #endif
    24 
    25 #ifndef SYMBIAN_ENABLE_SPLIT_HEADERS  
    26 #include <bsp.h>
    27 #endif
    28 
    29 
    30 
    31 // forward declarations
    32 class CBIODatabase;
    33 
    34 
    35 class CBIOClientMtm : public CBaseMtm
    36 /** BIO client MTM interface.
    37 
    38 The BIO client MTM is simply responsible for requesting BIO message parser 
    39 operations to the BIO Server MTM through InvokeAsyncFunctionL(). Many of the 
    40 other base class functions are implemented to do nothing. 
    41 @publishedPartner
    42 @released
    43 */
    44 	{
    45 public:
    46 	IMPORT_C static CBIOClientMtm* NewL(CRegisteredMtmDll& aRegisteredMtmDll, CMsvSession& aSession);
    47 	~CBIOClientMtm();
    48 	// from MMsvEntryObserver
    49 	void HandleEntryEvent(TMsvEntryEvent aEvent, TAny* aArg1, TAny* aArg2, TAny* aArg3);
    50 	//
    51 	// from CBaseMtm
    52 	void SaveMessageL(); 
    53 	void LoadMessageL();
    54 	CMsvOperation* ReplyL  (TMsvId aDestination, TMsvPartList aPartlist, TRequestStatus& aCompletionStatus);
    55 	CMsvOperation* ForwardL(TMsvId aDestination, TMsvPartList aPartList, TRequestStatus& aCompletionStatus);
    56 	TMsvPartList ValidateMessage(TMsvPartList aPartList);
    57 	TMsvPartList Find(const TDesC& aTextToFind, TMsvPartList aPartList);
    58 	void AddAddresseeL(const TDesC& aRealAddress);
    59 	void AddAddresseeL(const TDesC& aRealAddress, const TDesC& aAlias);
    60 	void RemoveAddressee(TInt aIndex);
    61 	// --- RTTI functions ---
    62 	TInt QueryCapability(TUid aCapability, TInt& aResponse);
    63 	void InvokeSyncFunctionL(TInt aFunctionId,const CMsvEntrySelection& aSelection, TDes8& aParameter);
    64 	CMsvOperation*  InvokeAsyncFunctionL(TInt aFunctionId,const CMsvEntrySelection& aSelection, TDes8& aParameter, TRequestStatus& aCompletionStatus);
    65 protected:
    66 	//
    67 	// from CBaseMtm
    68 	void ContextEntrySwitched();
    69 	//
    70 private:
    71 	CBIOClientMtm(CRegisteredMtmDll& aRegisteredMtmDll, CMsvSession& aSession);
    72 	void ConstructL();
    73 	//
    74 	void FindInDescriptionL(const TDesC& aTextToFind, TMsvPartList aPartList,TMsvPartList& aFoundList);
    75 	void FindInOriginatorL(const TDesC& aTextToFind, TMsvPartList aPartList,TMsvPartList& aFoundList);
    76 	void FindInBodyL(const TDesC& aTextToFind, TMsvPartList aPartList,TMsvPartList& aFoundList);
    77 private:
    78 	RFs					iFs;
    79 	CBIODatabase*		iBioDatabase;
    80 	};
    81 
    82 
    83 #endif