Msrp/MsrpClient/inc/CMSRP.h
branchMSRP_FrameWork
changeset 25 505ad3f0ce5c
child 58 cdb720e67852
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Msrp/MsrpClient/inc/CMSRP.h	Sat Jun 12 14:30:11 2010 +0530
@@ -0,0 +1,84 @@
+/*
+* 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:
+* MSRP Implementation
+*
+*/
+
+// This file defines the API for MSRPClient.dll
+
+#ifndef CMSRP_H_
+#define CMSRP_H_
+
+// @platform
+
+//  Include Files
+
+#include <e32base.h>
+#include <e32std.h>
+
+
+// Forward Declarations
+class CMSRPSession;
+class CMSRPImplementation;
+class MMSRPSessionObserver;
+
+
+// Class declaration.
+class CMSRP : public CBase
+    {
+public:
+    
+    /** 
+     * Object Creation
+     * @param aUid the UID of the application that is set by the client
+     */
+    IMPORT_C static CMSRP* NewL( const TUid& aUid );
+    
+    /**
+     * Object Creation
+     * @param aUid the UID of the application that is set by the client
+     */
+    IMPORT_C static CMSRP* NewLC( const TUid& aUid );
+    
+    IMPORT_C ~CMSRP();
+
+    /**
+     * Creates an msrp session for the client
+     * @param aObserver a reference to the session observer created by the client.
+     * This client-side observer receives callbacks from the msrp stack, in order to
+     * notify it of varous events
+     * @param aIapId the IAP on which the connection has to start for this session
+     * @return the created session object which can be used by the client
+     */
+    IMPORT_C CMSRPSession* CreateMSRPSessionL( MMSRPSessionObserver& aObserver, 
+                                               const TUint aIapId );
+    
+    /** 
+     * Closes the msrp session that the client had created.
+     * All the resources associated with the session are freed
+     * @param aMsrpSession the session that needs to be closed
+     */
+    IMPORT_C void CloseMSRPSession( CMSRPSession* aMsrpSession );
+
+private:
+    
+    void ConstructL( const TUid& aUid );
+    
+private:
+        
+    CMSRPImplementation* iMSRPImpl;
+    
+    };
+
+#endif  // CMSRP_H_
+