services/terminalmodeservice_plat/inc/upnptmserverdeviceinfo.h
author hgs
Fri, 23 Jul 2010 08:57:49 +0300
changeset 24 e9457ebcc4df
permissions -rw-r--r--
201029
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
24
hgs
parents:
diff changeset
     1
/**
hgs
parents:
diff changeset
     2
* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description: CUpnpTmServerDeviceInfo class declaration
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
#ifndef __UPNPTMSERVERDEVICEINFO_H__
hgs
parents:
diff changeset
    19
#define __UPNPTMSERVERDEVICEINFO_H__
hgs
parents:
diff changeset
    20
hgs
parents:
diff changeset
    21
hgs
parents:
diff changeset
    22
// INCLUDES
hgs
parents:
diff changeset
    23
#include <e32base.h>
hgs
parents:
diff changeset
    24
#include <upnpterminalmodeicon.h>
hgs
parents:
diff changeset
    25
hgs
parents:
diff changeset
    26
/**
hgs
parents:
diff changeset
    27
* This class represents device-specific parameters associated with 
hgs
parents:
diff changeset
    28
* Terminal Mode Server Device
hgs
parents:
diff changeset
    29
*/
hgs
parents:
diff changeset
    30
hgs
parents:
diff changeset
    31
class CUpnpTmServerDeviceInfo: public CBase
hgs
parents:
diff changeset
    32
    {
hgs
parents:
diff changeset
    33
public: 
hgs
parents:
diff changeset
    34
	/**
hgs
parents:
diff changeset
    35
    * Standard Symbian Two-phased constructor. 
hgs
parents:
diff changeset
    36
    * @param aIapId IAP ID. 32 bit unsigned integer. IAP stands  for 
hgs
parents:
diff changeset
    37
    *              internet access point.It is mandatory to set IAP ID
hgs
parents:
diff changeset
    38
    *               
hgs
parents:
diff changeset
    39
    */  
hgs
parents:
diff changeset
    40
    IMPORT_C static CUpnpTmServerDeviceInfo* NewL( TUint32 aIapId );
hgs
parents:
diff changeset
    41
    /**
hgs
parents:
diff changeset
    42
     * Method to set the icon information associated with the Terminal Mode
hgs
parents:
diff changeset
    43
     * Server Device. It provides device icon information to the TM Sevice.
hgs
parents:
diff changeset
    44
     * @param aDeviceIcon Pointer to TM Icon object.
hgs
parents:
diff changeset
    45
     *                    Ownership of the object is passed.
hgs
parents:
diff changeset
    46
     * @see CUpnpTerminalModeIcon
hgs
parents:
diff changeset
    47
     */
hgs
parents:
diff changeset
    48
    IMPORT_C void AddDeviceIconL( CUpnpTerminalModeIcon* aDeviceIcon );
hgs
parents:
diff changeset
    49
    /**
hgs
parents:
diff changeset
    50
     * Method to set the Nokia specific additional information
hgs
parents:
diff changeset
    51
     * about the terminal mode server device.
hgs
parents:
diff changeset
    52
     * The entire deviceInfo element should as an xml formatted buffer should
hgs
parents:
diff changeset
    53
     * be provided as an input.
hgs
parents:
diff changeset
    54
     * The device info value is opaque to the TM Service.
hgs
parents:
diff changeset
    55
     * @param aDeviceInfo XML formatted buffer containing deviceInfo element.
hgs
parents:
diff changeset
    56
     */
hgs
parents:
diff changeset
    57
    IMPORT_C void SetDeviceInfoL( const TDesC8& aDeviceInfo );
hgs
parents:
diff changeset
    58
	/**
hgs
parents:
diff changeset
    59
	* Method to set Bluetooth  MAC address of the TM server device. 
hgs
parents:
diff changeset
    60
	* If this value is populated then it means that the device 
hgs
parents:
diff changeset
    61
    *                         supports Bluetooth communication
hgs
parents:
diff changeset
    62
	* @param aBtAddress Bt MAC address
hgs
parents:
diff changeset
    63
	*/
hgs
parents:
diff changeset
    64
    IMPORT_C void SetBtAddressL( const TDesC8& aBtAddress );
hgs
parents:
diff changeset
    65
    /**
hgs
parents:
diff changeset
    66
    * A setter to indicate that server device is able to initiate
hgs
parents:
diff changeset
    67
    * Bluetooth connection to client or not.
hgs
parents:
diff changeset
    68
    * @param aStartConn Boolean value
hgs
parents:
diff changeset
    69
    */
hgs
parents:
diff changeset
    70
    inline void SetStartConn( TBool aStartConn );
hgs
parents:
diff changeset
    71
	/**
hgs
parents:
diff changeset
    72
	* inlined "getter" methods for Terminal Mode Service's use.
hgs
parents:
diff changeset
    73
	*/
hgs
parents:
diff changeset
    74
    inline TUint32 IapId()const;
hgs
parents:
diff changeset
    75
    inline const RPointerArray<CUpnpTerminalModeIcon>& DeviceIconList()const;
hgs
parents:
diff changeset
    76
    inline const TDesC8& DeviceInfo( )const;
hgs
parents:
diff changeset
    77
    inline const TDesC8& BtAddress( )const;
hgs
parents:
diff changeset
    78
    inline TBool StartConn()const;       
hgs
parents:
diff changeset
    79
    ~CUpnpTmServerDeviceInfo();
hgs
parents:
diff changeset
    80
    
hgs
parents:
diff changeset
    81
private: 
hgs
parents:
diff changeset
    82
    CUpnpTmServerDeviceInfo( );
hgs
parents:
diff changeset
    83
    void ConstructL( TUint32 aIapId );
hgs
parents:
diff changeset
    84
hgs
parents:
diff changeset
    85
private:
hgs
parents:
diff changeset
    86
    TUint32                                 iIapId;
hgs
parents:
diff changeset
    87
    HBufC8*                                 iDeviceInfo;
hgs
parents:
diff changeset
    88
    HBufC8*                                 iBtAddr;
hgs
parents:
diff changeset
    89
    TBool                                   iStartConnValue;
hgs
parents:
diff changeset
    90
    RPointerArray<CUpnpTerminalModeIcon>    iDeviceIconList;
hgs
parents:
diff changeset
    91
    };
hgs
parents:
diff changeset
    92
hgs
parents:
diff changeset
    93
#include <upnptmserverdeviceinfo.inl>
hgs
parents:
diff changeset
    94
hgs
parents:
diff changeset
    95
#endif // __UPNPTMSERVERDEVICEINFO_H__
hgs
parents:
diff changeset
    96
hgs
parents:
diff changeset
    97
hgs
parents:
diff changeset
    98
// End of File