obex/obexprotocol/obex/public/ObexIrTransportInfo.h
changeset 57 f6055a57ae18
parent 0 d0791faffa3f
equal deleted inserted replaced
54:4dc88a4ac6f4 57:f6055a57ae18
       
     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 "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.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__