services/terminalmodeservice/inc/upnptmserverdevice.h
branchRCL_3
changeset 10 594d15129e2c
parent 9 5c72fd91570d
equal deleted inserted replaced
9:5c72fd91570d 10:594d15129e2c
     1 /**
       
     2 * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description: CUpnpTmServerDevice class declaration
       
    15 *
       
    16 */
       
    17 
       
    18 #ifndef __UPNPTMSERVERDEVICE_H__
       
    19 #define __UPNPTMSERVERDEVICE_H__
       
    20 
       
    21 // System Includes
       
    22 #include <in_sock.h>
       
    23 #include <upnpdeviceimplementation.h>
       
    24 #include <upnpdevicedescriptionstore.h>
       
    25 
       
    26 // User Includes
       
    27 #include "upnptmappserverservice.h"
       
    28 #include "upnptmclientprofileservice.h"
       
    29 #include "upnptmserverdevicexmlparser.h"
       
    30 #include "upnptmserverdescriptionprovider.h"
       
    31 
       
    32 
       
    33 // CLASS DECLARATION
       
    34 
       
    35 // UPnP Terminal Mode Server Device container.
       
    36 
       
    37 class CUpnpTmServerDevice : public CBase
       
    38     {
       
    39 public:
       
    40      // Two-phased constructor.
       
    41     static CUpnpTmServerDevice* NewL( CUpnpTmServerDeviceInfo& aDeviceInfo, 
       
    42                                             CUpnpTmServerImpl& aTmServerImpl ); 
       
    43      // Destructor.     
       
    44     ~CUpnpTmServerDevice();
       
    45 
       
    46 public:
       
    47     // Starts TM Server - Device, Service
       
    48     void StartTmServerDeviceL();
       
    49     // Stops TM Server - Device, Service
       
    50     void StopTmServerDeviceL();
       
    51     //Event handling methods invoked by CUpnpTmServerImpl object
       
    52     void AppStatusUpdateL( const TDesC8& aStatusEventBuffer );
       
    53     void AppListUpdateL( const TDesC8& aListEventBuffer );
       
    54     void UnUsedProfileIdUpdateL( const TDesC8& aUnusedProfileIdBuffer );
       
    55 
       
    56 private:
       
    57     // Constructor
       
    58     CUpnpTmServerDevice();
       
    59     // Perform the second phase construction of a CUpnpTmServerDevice object
       
    60     void ConstructL( CUpnpTmServerDeviceInfo& aDeviceInfo,CUpnpTmServerImpl& aTmServerImpl );
       
    61 
       
    62 private:
       
    63     // iDevice TerminalMode Server Device 
       
    64     CUpnpDeviceImplementation*              iDevice;
       
    65     CUpnpTmAppServerService*                iTmAppServerService;
       
    66     CUpnpTmClientProfileService*            iTmClientProfileService;
       
    67     // Provides files for description part
       
    68     CUpnpTmServerDescriptionProvider*       iDescriptionProvider; 
       
    69     // Services device description
       
    70     CUpnpDeviceDescriptionStore*            iDescriptionStore;
       
    71     CUpnpTmServerDeviceXmlParser*           iXmlParser;
       
    72     TBool                                   iIsStarted;
       
    73     };
       
    74 
       
    75 #endif //__UPNPTMSERVERDEVICE_H__