1 obexirtransportinfo.h |
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__ |