services/terminalmodeservice/inc/upnptmserverdevice.h
branchRCL_3
changeset 9 5c72fd91570d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/services/terminalmodeservice/inc/upnptmserverdevice.h	Tue Aug 31 16:06:48 2010 +0300
@@ -0,0 +1,75 @@
+/**
+* Copyright (c) 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: CUpnpTmServerDevice class declaration
+*
+*/
+
+#ifndef __UPNPTMSERVERDEVICE_H__
+#define __UPNPTMSERVERDEVICE_H__
+
+// System Includes
+#include <in_sock.h>
+#include <upnpdeviceimplementation.h>
+#include <upnpdevicedescriptionstore.h>
+
+// User Includes
+#include "upnptmappserverservice.h"
+#include "upnptmclientprofileservice.h"
+#include "upnptmserverdevicexmlparser.h"
+#include "upnptmserverdescriptionprovider.h"
+
+
+// CLASS DECLARATION
+
+// UPnP Terminal Mode Server Device container.
+
+class CUpnpTmServerDevice : public CBase
+    {
+public:
+     // Two-phased constructor.
+    static CUpnpTmServerDevice* NewL( CUpnpTmServerDeviceInfo& aDeviceInfo, 
+                                            CUpnpTmServerImpl& aTmServerImpl ); 
+     // Destructor.     
+    ~CUpnpTmServerDevice();
+
+public:
+    // Starts TM Server - Device, Service
+    void StartTmServerDeviceL();
+    // Stops TM Server - Device, Service
+    void StopTmServerDeviceL();
+    //Event handling methods invoked by CUpnpTmServerImpl object
+    void AppStatusUpdateL( const TDesC8& aStatusEventBuffer );
+    void AppListUpdateL( const TDesC8& aListEventBuffer );
+    void UnUsedProfileIdUpdateL( const TDesC8& aUnusedProfileIdBuffer );
+
+private:
+    // Constructor
+    CUpnpTmServerDevice();
+    // Perform the second phase construction of a CUpnpTmServerDevice object
+    void ConstructL( CUpnpTmServerDeviceInfo& aDeviceInfo,CUpnpTmServerImpl& aTmServerImpl );
+
+private:
+    // iDevice TerminalMode Server Device 
+    CUpnpDeviceImplementation*              iDevice;
+    CUpnpTmAppServerService*                iTmAppServerService;
+    CUpnpTmClientProfileService*            iTmClientProfileService;
+    // Provides files for description part
+    CUpnpTmServerDescriptionProvider*       iDescriptionProvider; 
+    // Services device description
+    CUpnpDeviceDescriptionStore*            iDescriptionStore;
+    CUpnpTmServerDeviceXmlParser*           iXmlParser;
+    TBool                                   iIsStarted;
+    };
+
+#endif //__UPNPTMSERVERDEVICE_H__