diff -r fc7b30ed2058 -r 05bc53fe583b cmmanager/cmmgr/cmmapi/inc/cmdestinationwrapper.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cmmanager/cmmgr/cmmapi/inc/cmdestinationwrapper.h Tue Aug 31 15:35:44 2010 +0300 @@ -0,0 +1,117 @@ +/* +* Copyright (c) 2009-2010 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: +* Collects API calls from RCmDestination- and RCmDestinationExt-classes. +* +*/ + + +#ifndef CMDESTINATIONWRAPPER_H +#define CMDESTINATIONWRAPPER_H + + +#include +#include "cmdestinationapi.h" + +class RCmManagerApi; + + +NONSHARABLE_CLASS( CCmDestinationWrapper ) : public CBase + { +public: + static CCmDestinationWrapper* NewL(); + static CCmDestinationWrapper* NewLC(); + virtual ~CCmDestinationWrapper(); + +public: + CCmDestinationWrapper(); + +public: + void GetDestWithIdL( + RCmManagerApi* aCmManagerApi, + const TUint32 aId, + TInt& aExistingHandle ); + void CreateDestByNameL( + RCmManagerApi* aCmManagerApi, + const TDesC& aName ); + void CreateDestByNameAndIdL( + RCmManagerApi* aCmManagerApi, + const TDesC& aName, + const TUint32 aId ); + void GetConnMethodAsEmbeddedDestL( + RCmManagerApi* aCmManagerApi, + const TInt aConnMethodHandle, + TInt& aExistingHandle ); + + TInt ConnectionMethodCount( TInt& aCount ); + TInt Priority( const TInt aHandle, TUint& aPriority ); + TInt GetName( HBufC* aBuffer ); + TInt GetId( TUint32& aId ); + TInt GetElementId( TUint32& aElementId ); + TInt GetMetadata( + const TUint32 aMetadataField, + TUint32& aValue ); + TInt GetProtectionLevel( TInt& aProtectionLevel ); + + TInt AddConnectionMethod( + const TInt aConnMethodHandle, + TInt& aIndex ); + TInt AddEmbeddedDestination( + const TInt aDestHandle, + TInt& aIndex ); + TInt DeleteConnectionMethod( + const TInt aConnMethodHandle); + TInt RemoveConnectionMethod( + const TInt aConnMethodHandle ); + + TInt ModifyPriority( + const TInt aConnMethodHandle, + const TUint aIndex ); + TInt SetName( const TDesC& aValue ); + TInt SetMetadata( + const TUint32 aMetaField, + const TUint32 aValue ); + TInt SetProtection( const TInt aValue ); + TInt SetHidden( const TBool aHidden ); + TInt Update(); + TInt Refresh(); + TInt Delete(); + TInt IsConnected( TBool& aResult ); + TInt IsHidden( TBool& aResult ); + TInt IsEqual( const TInt aHandle, TBool& aResult ); + TInt GetIcon( HBufC* aBuffer ); + TInt SetIcon( const TDesC& aValue); + + TBool SessionConnected(); + void CloseSession(); + TInt GetHandle() const; + RCmManagerApi* GetMainSession() const; + + void IncreaseReferenceCounter(); + TInt DecreaseReferenceCounter(); + +private: + // Subsession to server representing this destination handle. + RCmDestinationApi iCmDestinationApi; + + // Pointer for main session to server. + RCmManagerApi* iCmManagerApi; // Not owned. + + // Counts the number of references client has to this specific handle. + TInt iReferenceCounter; + }; + +#endif // CMDESTINATIONWRAPPER_H + +// End of file