epoc32/include/obexirtransportinfo.h
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
parent 0 061f57f2323e
permissions -rw-r--r--
Final list of Symbian^2 public API header files
     1 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 //
    15 
    16 #ifndef __OBEXIRTRANSPORTINFO_H__
    17 #define __OBEXIRTRANSPORTINFO_H__
    18 
    19 #include <ir_sock.h>
    20 #include <obextransportinfo.h>
    21 
    22 /**
    23 Concrete transport info type for use when using Irda ttp  transport controller.
    24 @see KObexIrTTPProtocol
    25 @publishedAll
    26 @released
    27 */
    28 NONSHARABLE_CLASS(TObexIrTransportInfo) : public TObexTransportInfo
    29 
    30 	{
    31 //From TObexIrProtocolInfo
    32 public:
    33 	/** IrDA address information for this connection, as used in the IrDA sockets interface.
    34 	Refer to the SDK for more information about this.
    35 	Its main use is for setting the port that the local machine will listen on. */
    36 	TIrdaSockAddr iAddr;
    37 	/** The IAS class value that the OBEX session will register its listener port,
    38 	or request remote port with. */
    39 	TBuf8<KIASClassNameMax> iClassName;
    40 	/** The IAS attribute value that the OBEX session will register its listener port,
    41 	or request remote port with. */
    42 	TBuf8<KIASAttributeNameMax> iAttributeName;
    43 	};
    44 
    45 /**
    46 Concrete transport info type for use when using Irda ttp  transport controller, with discovery extensions.
    47 @see KObexIrTTPProtocolV2
    48 @publishedAll
    49 @released
    50 */
    51 NONSHARABLE_CLASS(TObexIrV2TransportInfo) : public TObexIrTransportInfo
    52 
    53 	{
    54 //From TObexIrProtocolInfo
    55 public:
    56 	/** The number of discovery slots to use. */
    57 	TUint8 iDiscoverySlots;
    58 	/** The number of discovery attempts to make. */
    59 	TUint8 iDiscoveryAttempts;
    60 	
    61 private:
    62 	// This data padding has been added to help prevent future binary compatibility breaks	
    63 	// None of these padding variables have been zero'd because they are currently not used
    64 	TUint32     iPadding1; 
    65 	TUint32     iPadding2; 		
    66 	TUint32     iPadding3; 
    67 	TUint32     iPadding4; 	
    68 	};
    69 
    70 
    71 /**
    72 Concrete transport info type for use when using Irda ttp transport controller, with nickname extension.
    73 @see KObexIrTTPProtocolV3
    74 @publishedAll
    75 
    76 @capability WriteDeviceData If the TObexIrV3TransportInfo is passed as the argument
    77                             to CObexServer::NewL or CObexClient::NewL and the associated 
    78                             name is valid.
    79 
    80 @released
    81 */
    82 NONSHARABLE_CLASS(TObexIrV3TransportInfo) : public TObexIrV2TransportInfo
    83 	{
    84 public:
    85 	/** The device nickname.  The maximum length in the IrDA specification
    86 	is defined as 23 - (number of hint octets [2] + 1)  =  20
    87 	*/
    88 	TBuf<20> iLocalDeviceNickname;
    89 	
    90 	/** A flag indicating if the device nickname field is valid.  This
    91 	allows Symbian to make further derivations of this interface without making
    92 	the device nickname mandatory */
    93 	TBool iLocalDeviceNicknameValid;
    94 	};
    95 
    96 #endif // __OBEXIRTRANSPORTINFO_H__