|
1 // Copyright (c) 2004-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 #include "qoslib.h" |
|
17 #ifdef SYMBIAN_ENABLE_SPLIT_HEADERS |
|
18 #include <networking/qoslib_internal.h> |
|
19 #endif |
|
20 |
|
21 /* |
|
22 * These methods are valid for Symbian OS 9.0 and onwards. |
|
23 */ |
|
24 /** |
|
25 Default constructor. |
|
26 |
|
27 @publishedPartner |
|
28 @released |
|
29 @capability NetworkServices Restrict QoS operations in similar way as |
|
30 normal socket operations. |
|
31 */ |
|
32 EXPORT_C CQoSParameters::CQoSParameters() |
|
33 { |
|
34 iExtensionList.SetOffset(_FOFF(CExtensionBase, iLink)); |
|
35 } |
|
36 |
|
37 /** |
|
38 Destructor. |
|
39 |
|
40 Deletes all extensions. |
|
41 |
|
42 @publishedPartner |
|
43 @released |
|
44 @capability NetworkServices Restrict QoS operations in similar way as |
|
45 normal socket operations. |
|
46 */ |
|
47 EXPORT_C CQoSParameters::~CQoSParameters() |
|
48 { |
|
49 TQoSExtensionQueueIter iter(iExtensionList); |
|
50 CExtensionBase *extension; |
|
51 |
|
52 while ((extension = iter++) != NULL) |
|
53 { |
|
54 iExtensionList.Remove(*extension); |
|
55 delete extension; |
|
56 } |
|
57 } |
|
58 |
|
59 /** |
|
60 Copies the parameters and extensions from aFlowSpec into this object. |
|
61 |
|
62 Any existing extensions are deleted. |
|
63 |
|
64 @publishedPartner |
|
65 @released |
|
66 @capability NetworkServices Restrict QoS operations in similar way as |
|
67 normal socket operations. |
|
68 @param aFlowSpec Contains the CQoSParameters object that is copied into this |
|
69 object. |
|
70 @leave If there is no memory available for extensions. |
|
71 */ |
|
72 EXPORT_C void CQoSParameters::CopyL(CQoSParameters& aFlowSpec) |
|
73 { |
|
74 TQoSExtensionQueueIter iter_old(iExtensionList); |
|
75 TQoSExtensionQueueIter iter(aFlowSpec.Extensions()); |
|
76 CExtensionBase *ext; |
|
77 |
|
78 // Delete old extensions |
|
79 while ((ext = iter_old++) != NULL) |
|
80 { |
|
81 iExtensionList.Remove(*ext); |
|
82 delete ext; |
|
83 } |
|
84 |
|
85 // Add new extensions |
|
86 while ((ext = iter++) != NULL) |
|
87 { |
|
88 AddExtensionL(*ext); |
|
89 } |
|
90 iQoS = aFlowSpec.iQoS; |
|
91 } |
|
92 |
|
93 // Keep private copy of extensions |
|
94 /** |
|
95 Copies the extension into the list of extensions. |
|
96 |
|
97 If there already exists an extension with the same type, it is replaced. |
|
98 |
|
99 @publishedPartner |
|
100 @released |
|
101 @capability NetworkServices Restrict QoS operations in similar way as |
|
102 normal socket operations. |
|
103 @param aExtension The extension that is added to the list of extenstions. |
|
104 @leave If there is no memory available for the extension. |
|
105 @return KErrNone, always. |
|
106 */ |
|
107 EXPORT_C TInt CQoSParameters::AddExtensionL(CExtensionBase& aExtension) |
|
108 { |
|
109 CExtensionBase *ext = FindExtension(aExtension.Type()); |
|
110 if (ext) |
|
111 { |
|
112 ext->Copy(aExtension); |
|
113 } |
|
114 else |
|
115 { |
|
116 ext = aExtension.CreateL(); |
|
117 ext->Copy(aExtension); |
|
118 iExtensionList.AddLast(*ext); |
|
119 } |
|
120 return KErrNone; |
|
121 } |
|
122 |
|
123 |
|
124 /** |
|
125 Removes the extension with the specified extension type from the list of |
|
126 extensions. |
|
127 |
|
128 @publishedPartner |
|
129 @released |
|
130 @capability NetworkServices Restrict QoS operations in similar way as |
|
131 normal socket operations. |
|
132 @param aType The type of extension to be removed from the list of extensions. |
|
133 @return KErrNone, if the extension is found; otherwise, KErrNotFound. |
|
134 */ |
|
135 EXPORT_C TInt CQoSParameters::RemoveExtension(TInt aType) |
|
136 { |
|
137 CExtensionBase *extension = FindExtension(aType); |
|
138 if (!extension) |
|
139 { |
|
140 return KErrNotFound; |
|
141 } |
|
142 iExtensionList.Remove(*extension); |
|
143 delete extension; |
|
144 return KErrNone; |
|
145 } |
|
146 |
|
147 /** |
|
148 Gets an extension with the specified extension type. |
|
149 |
|
150 @publishedPartner |
|
151 @released |
|
152 @capability NetworkServices Restrict QoS operations in similar way as |
|
153 normal socket operations. |
|
154 @param aType The type of extension that is to be searched for from the list |
|
155 of extensions. |
|
156 @return A pointer to an extension if the extension is found, otherwise NULL. |
|
157 */ |
|
158 EXPORT_C CExtensionBase* CQoSParameters::FindExtension(TInt aType) |
|
159 { |
|
160 TQoSExtensionQueueIter iter(iExtensionList); |
|
161 CExtensionBase *ext; |
|
162 |
|
163 while ((ext = iter++) != NULL) |
|
164 { |
|
165 if (ext->Type() == aType) |
|
166 { |
|
167 return ext; |
|
168 } |
|
169 } |
|
170 return NULL; |
|
171 } |
|
172 |
|
173 /** |
|
174 Gets a list of extensions that have been added to this object. |
|
175 |
|
176 @publishedPartner |
|
177 @released |
|
178 @capability NetworkServices Restrict QoS operations in similar way as |
|
179 normal socket operations. |
|
180 @return A list of extensions. |
|
181 */ |
|
182 EXPORT_C TQoSExtensionQueue& CQoSParameters::Extensions() |
|
183 { |
|
184 return iExtensionList; |
|
185 } |
|
186 |
|
187 /** |
|
188 Gets the bandwidth for uplink direction. |
|
189 |
|
190 Bandwidth defines the requested transfer rate that the application requests. |
|
191 |
|
192 @publishedPartner |
|
193 @released |
|
194 @capability NetworkServices Restrict QoS operations in similar way as |
|
195 normal socket operations. |
|
196 @return Current bandwidth for uplink direction (in bytes/second). |
|
197 */ |
|
198 EXPORT_C TInt CQoSParameters::GetUplinkBandwidth() const |
|
199 { |
|
200 return iQoS.GetUplinkBandwidth(); |
|
201 } |
|
202 |
|
203 /** |
|
204 Gets the maximum burst size for uplink direction. |
|
205 |
|
206 Maximum burst size defines the burst size that the application might send. |
|
207 |
|
208 @publishedPartner |
|
209 @released |
|
210 @capability NetworkServices Restrict QoS operations in similar way as |
|
211 normal socket operations. |
|
212 @return Current maximum burst size for uplink direction (in bytes). |
|
213 */ |
|
214 EXPORT_C TInt CQoSParameters::GetUpLinkMaximumBurstSize() const |
|
215 { |
|
216 return iQoS.GetUpLinkMaximumBurstSize(); |
|
217 } |
|
218 |
|
219 /** |
|
220 Gets the maximum packet size for uplink direction. |
|
221 |
|
222 @publishedPartner |
|
223 @released |
|
224 @capability NetworkServices Restrict QoS operations in similar way as |
|
225 normal socket operations. |
|
226 @return Current maximum packet size for uplink direction (in bytes). |
|
227 */ |
|
228 EXPORT_C TInt CQoSParameters::GetUpLinkMaximumPacketSize() const |
|
229 { |
|
230 return iQoS.GetUpLinkMaximumPacketSize(); |
|
231 } |
|
232 |
|
233 /** |
|
234 Gets the average packet size for uplink direction. |
|
235 |
|
236 Average packet size is used when doing traffic policing and estimating |
|
237 effect of protocol headers. |
|
238 |
|
239 @publishedPartner |
|
240 @released |
|
241 @capability NetworkServices Restrict QoS operations in similar way as |
|
242 normal socket operations. |
|
243 @return Current average packet size for uplink direction (in bytes). |
|
244 */ |
|
245 EXPORT_C TInt CQoSParameters::GetUpLinkAveragePacketSize() const |
|
246 { |
|
247 return iQoS.GetUpLinkAveragePacketSize(); |
|
248 } |
|
249 |
|
250 /** |
|
251 Gets the delay for uplink direction. |
|
252 |
|
253 @publishedPartner |
|
254 @released |
|
255 @capability NetworkServices Restrict QoS operations in similar way as |
|
256 normal socket operations. |
|
257 @return Currrent delay for uplink direction (in milliseconds). |
|
258 */ |
|
259 EXPORT_C TInt CQoSParameters::GetUpLinkDelay() const |
|
260 { |
|
261 return iQoS.GetUpLinkDelay(); |
|
262 } |
|
263 |
|
264 /** |
|
265 Gets the priority for uplink direction. |
|
266 |
|
267 Priority can be used to prioritise between traffic flows inside the terminal. |
|
268 |
|
269 @publishedPartner |
|
270 @released |
|
271 @capability NetworkServices Restrict QoS operations in similar way as |
|
272 normal socket operations. |
|
273 @return Current priority for uplink direction: 0 is the highest priority, |
|
274 7 is lowest. |
|
275 */ |
|
276 EXPORT_C TInt CQoSParameters::GetUpLinkPriority() const |
|
277 { |
|
278 return iQoS.GetUpLinkPriority(); |
|
279 } |
|
280 |
|
281 /** |
|
282 Gets the bandwidth for downlink direction. |
|
283 |
|
284 Bandwidth defines the requested transfer rate that the application requests. |
|
285 |
|
286 @publishedPartner |
|
287 @released |
|
288 @capability NetworkServices Restrict QoS operations in similar way as |
|
289 normal socket operations. |
|
290 @return Current bandwidth for downlink direction (in bytes/second). |
|
291 */ |
|
292 EXPORT_C TInt CQoSParameters::GetDownlinkBandwidth() const |
|
293 { |
|
294 return iQoS.GetDownlinkBandwidth(); |
|
295 } |
|
296 |
|
297 /** |
|
298 Gets the maximum burst size for downlink direction. |
|
299 |
|
300 Maximum burst size defines the burst size that the application might send. |
|
301 |
|
302 @publishedPartner |
|
303 @released |
|
304 @capability NetworkServices Restrict QoS operations in similar way as |
|
305 normal socket operations. |
|
306 @return Current maximum burst size for downlink direction (in bytes). |
|
307 */ |
|
308 EXPORT_C TInt CQoSParameters::GetDownLinkMaximumBurstSize() const |
|
309 { |
|
310 return iQoS.GetDownLinkMaximumBurstSize(); |
|
311 } |
|
312 |
|
313 /** |
|
314 Gets the maximum packet size for downlink direction. |
|
315 |
|
316 @publishedPartner |
|
317 @released |
|
318 @capability NetworkServices Restrict QoS operations in similar way as |
|
319 normal socket operations. |
|
320 @return Current maximum packet size for downlink direction (in bytes). |
|
321 */ |
|
322 EXPORT_C TInt CQoSParameters::GetDownLinkMaximumPacketSize() const |
|
323 { |
|
324 return iQoS.GetDownLinkMaximumPacketSize(); |
|
325 } |
|
326 |
|
327 /** |
|
328 Gets the average packet size for downlink direction. |
|
329 |
|
330 Average packet size is used when doing traffic policing and estimating |
|
331 effect of protocol headers. |
|
332 |
|
333 @publishedPartner |
|
334 @released |
|
335 @capability NetworkServices Restrict QoS operations in similar way as |
|
336 normal socket operations. |
|
337 @return Current average packet size for downlink direction (in bytes). |
|
338 */ |
|
339 EXPORT_C TInt CQoSParameters::GetDownLinkAveragePacketSize() const |
|
340 { |
|
341 return iQoS.GetDownLinkAveragePacketSize(); |
|
342 } |
|
343 |
|
344 /** |
|
345 Gets the delay for downlink direction. |
|
346 |
|
347 @publishedPartner |
|
348 @released |
|
349 @capability NetworkServices Restrict QoS operations in similar way as |
|
350 normal socket operations. |
|
351 @return Currrent delay for downlink direction (in milliseconds). |
|
352 */ |
|
353 EXPORT_C TInt CQoSParameters::GetDownLinkDelay() const |
|
354 { |
|
355 return iQoS.GetDownLinkDelay(); |
|
356 } |
|
357 |
|
358 /** |
|
359 Gets the priority for downlink direction. |
|
360 |
|
361 Priority can be used to prioritise between traffic flows inside the terminal. |
|
362 |
|
363 @publishedPartner |
|
364 @released |
|
365 @capability NetworkServices Restrict QoS operations in similar way as |
|
366 normal socket operations. |
|
367 @return Current priority for downlink direction: 0 is the highest priority, |
|
368 7 is lowest. |
|
369 */ |
|
370 EXPORT_C TInt CQoSParameters::GetDownLinkPriority() const |
|
371 { |
|
372 return iQoS.GetDownLinkPriority(); |
|
373 } |
|
374 |
|
375 /** |
|
376 Sets the bandwidth for uplink direction. |
|
377 |
|
378 Bandwidth defines the requested transfer rate that the application requests. |
|
379 Bandwidth must be > 0. |
|
380 |
|
381 @publishedPartner |
|
382 @released |
|
383 @capability NetworkServices Restrict QoS operations in similar way as |
|
384 normal socket operations. |
|
385 @param aBandwidth Value (in bytes/second) to which to set the bandwidth for |
|
386 uplink direction. |
|
387 */ |
|
388 EXPORT_C void CQoSParameters::SetUplinkBandwidth(TInt aBandwidth) |
|
389 { |
|
390 iQoS.SetUplinkBandwidth(aBandwidth); |
|
391 } |
|
392 |
|
393 /** |
|
394 Sets the maximum burst size for uplink direction. |
|
395 |
|
396 Maximum burst size defines the burst size that the application might send. |
|
397 Maximum burst size must be > 0. |
|
398 |
|
399 @publishedPartner |
|
400 @released |
|
401 @capability NetworkServices Restrict QoS operations in similar way as |
|
402 normal socket operations. |
|
403 @param aSize Value (in bytes) to which to set the maximum burst size for |
|
404 uplink direction. |
|
405 */ |
|
406 EXPORT_C void CQoSParameters::SetUpLinkMaximumBurstSize(TInt aSize) |
|
407 { |
|
408 iQoS.SetUpLinkMaximumBurstSize(aSize); |
|
409 } |
|
410 |
|
411 /** |
|
412 Sets the maximum packet size for uplink direction. |
|
413 |
|
414 @publishedPartner |
|
415 @released |
|
416 @capability NetworkServices Restrict QoS operations in similar way as |
|
417 normal socket operations. |
|
418 @param aMaxSize Value (in bytes) to which to set the maximum packet size for |
|
419 uplink direction. |
|
420 */ |
|
421 EXPORT_C void CQoSParameters::SetUpLinkMaximumPacketSize(TInt aMaxSize) |
|
422 { |
|
423 iQoS.SetUpLinkMaximumPacketSize(aMaxSize); |
|
424 } |
|
425 |
|
426 /** |
|
427 Sets the average packet size for uplink direction. |
|
428 |
|
429 Average packet size is used when doing traffic policing and estimating |
|
430 effect of protocol headers. The average packet size must be <= maximum |
|
431 packet size. |
|
432 |
|
433 @publishedPartner |
|
434 @released |
|
435 @capability NetworkServices Restrict QoS operations in similar way as |
|
436 normal socket operations. |
|
437 @param aSize Value (in bytes) to which to set the average packet size |
|
438 for uplink direction. |
|
439 */ |
|
440 EXPORT_C void CQoSParameters::SetUpLinkAveragePacketSize(TInt aSize) |
|
441 { |
|
442 iQoS.SetUpLinkAveragePacketSize(aSize); |
|
443 } |
|
444 |
|
445 /** |
|
446 Sets the requested delay for uplink direction. |
|
447 |
|
448 @publishedPartner |
|
449 @released |
|
450 @capability NetworkServices Restrict QoS operations in similar way as |
|
451 normal socket operations. |
|
452 @param aDelay Value (in milliseconds) to which to set the delay for uplink |
|
453 direction. |
|
454 */ |
|
455 EXPORT_C void CQoSParameters::SetUpLinkDelay(TInt aDelay) |
|
456 { |
|
457 iQoS.SetUpLinkDelay(aDelay); |
|
458 } |
|
459 |
|
460 /** |
|
461 Sets the priority for uplink direction. |
|
462 |
|
463 Priority can be used to prioritise between traffic flows inside the terminal. |
|
464 |
|
465 @publishedPartner |
|
466 @released |
|
467 @capability NetworkServices Restrict QoS operations in similar way as |
|
468 normal socket operations. |
|
469 @param aPriority Value (0-7) to which to set the priority for uplink |
|
470 direction: 0 is the highest priority, 7 is lowest. |
|
471 */ |
|
472 EXPORT_C void CQoSParameters::SetUpLinkPriority(TInt aPriority) |
|
473 { |
|
474 iQoS.SetUpLinkPriority(aPriority); |
|
475 } |
|
476 |
|
477 /** |
|
478 Sets the bandwidth for downlink direction. |
|
479 |
|
480 Bandwidth defines the requested transfer rate that the application requests. |
|
481 Bandwidth must be > 0. |
|
482 |
|
483 @publishedPartner |
|
484 @released |
|
485 @capability NetworkServices Restrict QoS operations in similar way as |
|
486 normal socket operations. |
|
487 @param aBandwidth Value (in bytes/second) to which to set the bandwidth for |
|
488 downlink direction. |
|
489 */ |
|
490 EXPORT_C void CQoSParameters::SetDownlinkBandwidth(TInt aBandwidth) |
|
491 { |
|
492 iQoS.SetDownlinkBandwidth(aBandwidth); |
|
493 } |
|
494 |
|
495 /** |
|
496 Sets the maximum burst size for downlink direction. |
|
497 |
|
498 Maximum burst size defines the burst size that the application might send. |
|
499 Maximum burst size must be > 0. |
|
500 |
|
501 @publishedPartner |
|
502 @released |
|
503 @capability NetworkServices Restrict QoS operations in similar way as |
|
504 normal socket operations. |
|
505 @param aSize Value (in bytes) to which to set the maximum burst size for |
|
506 downlink direction. |
|
507 */ |
|
508 EXPORT_C void CQoSParameters::SetDownLinkMaximumBurstSize(TInt aSize) |
|
509 { |
|
510 iQoS.SetDownLinkMaximumBurstSize(aSize); |
|
511 } |
|
512 |
|
513 /** |
|
514 Sets the maximum packet size for downlink direction. |
|
515 |
|
516 @publishedPartner |
|
517 @released |
|
518 @capability NetworkServices Restrict QoS operations in similar way as |
|
519 normal socket operations. |
|
520 @param aMaxSize Value (in bytes) to which to set the maximum packet size for |
|
521 downlink direction. |
|
522 */ |
|
523 EXPORT_C void CQoSParameters::SetDownLinkMaximumPacketSize(TInt aMaxSize) |
|
524 { |
|
525 iQoS.SetDownLinkMaximumPacketSize(aMaxSize); |
|
526 } |
|
527 |
|
528 /** |
|
529 Sets the average packet size for downlink direction. |
|
530 |
|
531 Average packet size is used when doing traffic policing and estimating |
|
532 effect of protocol headers. The average packet size must be <= maximum |
|
533 packet size. |
|
534 |
|
535 @publishedPartner |
|
536 @released |
|
537 @capability NetworkServices Restrict QoS operations in similar way as |
|
538 normal socket operations. |
|
539 @param aSize Value (in bytes) to which to set the average packet size |
|
540 for downlink direction. |
|
541 */ |
|
542 EXPORT_C void CQoSParameters::SetDownLinkAveragePacketSize(TInt aSize) |
|
543 { |
|
544 iQoS.SetDownLinkAveragePacketSize(aSize); |
|
545 } |
|
546 |
|
547 /** |
|
548 Sets the requested delay for downlink direction. |
|
549 |
|
550 @publishedPartner |
|
551 @released |
|
552 @capability NetworkServices Restrict QoS operations in similar way as |
|
553 normal socket operations. |
|
554 @param aDelay Value (in milliseconds) to which to set the delay for downlink |
|
555 direction. |
|
556 */ |
|
557 EXPORT_C void CQoSParameters::SetDownLinkDelay(TInt aDelay) |
|
558 { |
|
559 iQoS.SetDownLinkDelay(aDelay); |
|
560 } |
|
561 |
|
562 /** |
|
563 Sets the priority for downlink direction. |
|
564 |
|
565 Priority can be used to prioritise between traffic flows inside the terminal. |
|
566 |
|
567 @publishedPartner |
|
568 @released |
|
569 @capability NetworkServices Restrict QoS operations in similar way as |
|
570 normal socket operations. |
|
571 @param aPriority Value (0-7) to which to set the priority for downlink |
|
572 direction: 0 is the highest priority, 7 is lowest. |
|
573 */ |
|
574 EXPORT_C void CQoSParameters::SetDownLinkPriority(TInt aPriority) |
|
575 { |
|
576 iQoS.SetDownLinkPriority(aPriority); |
|
577 } |
|
578 |
|
579 /** |
|
580 Gets the name of the flowspec. |
|
581 |
|
582 @publishedPartner |
|
583 @released |
|
584 @capability NetworkServices Restrict QoS operations in similar way as |
|
585 normal socket operations. |
|
586 @return Current name of the flowspec. |
|
587 */ |
|
588 EXPORT_C const TName& CQoSParameters::GetName() const |
|
589 { |
|
590 return iQoS.GetName(); |
|
591 } |
|
592 |
|
593 /** |
|
594 Gets the adaptation mode. |
|
595 |
|
596 @publishedPartner |
|
597 @released |
|
598 @capability NetworkServices Restrict QoS operations in similar way as |
|
599 normal socket operations. |
|
600 @return Current value for adapt mode. |
|
601 */ |
|
602 EXPORT_C TBool CQoSParameters::AdaptMode() const |
|
603 { |
|
604 return iQoS.AdaptMode(); |
|
605 } |
|
606 |
|
607 /** |
|
608 Returns the headers included mode. |
|
609 |
|
610 @publishedPartner |
|
611 @released |
|
612 @capability NetworkServices Restrict QoS operations in similar way as |
|
613 normal socket operations. |
|
614 @return Current value for header included mode. |
|
615 */ |
|
616 EXPORT_C TBool CQoSParameters::GetHeaderMode() const |
|
617 { |
|
618 return iQoS.GetHeaderMode(); |
|
619 } |
|
620 |
|
621 /** |
|
622 Sets the name of the flowspec. |
|
623 |
|
624 This allows application to specify a user friendly name for a flowspec. |
|
625 |
|
626 @publishedPartner |
|
627 @released |
|
628 @capability NetworkServices Restrict QoS operations in similar way as |
|
629 normal socket operations. |
|
630 @param aName The name for the flowspec. Maximum length for the name is |
|
631 KMaxName. |
|
632 */ |
|
633 EXPORT_C void CQoSParameters::SetName(const TName& aName) |
|
634 { |
|
635 // Member variable iName was taken into use temporarily |
|
636 iName.Copy(aName); |
|
637 iQoS.SetName(aName); |
|
638 } |
|
639 |
|
640 /** |
|
641 Sets the adaptation mode. |
|
642 |
|
643 If the application is willing to accept lower QoS than requested, |
|
644 it should set the adapt mode on. By default adapt mode is not set. |
|
645 |
|
646 @publishedPartner |
|
647 @released |
|
648 @capability NetworkServices Restrict QoS operations in similar way as |
|
649 normal socket operations. |
|
650 @param aCanAdapt The value for adapt mode. |
|
651 */ |
|
652 EXPORT_C void CQoSParameters::SetAdaptMode(TBool aCanAdapt) |
|
653 { |
|
654 iQoS.SetAdaptMode(aCanAdapt); |
|
655 } |
|
656 |
|
657 /** |
|
658 Sets the header mode. If the application wants QoS Framework to include |
|
659 network and transport layer header values in bitrate calculations or not. |
|
660 By default the mode is set to include the headers in the calculations. |
|
661 Protocols such as RTSP or SIP, which already include the header sizes in |
|
662 their calculations will want to alter the mode so that header values are |
|
663 not included in calculations twice. |
|
664 |
|
665 @publishedPartner |
|
666 @released |
|
667 @capability NetworkServices Restrict QoS operations in similar way as |
|
668 normal socket operations. |
|
669 @param aHeadersIncluded The value for header mode. |
|
670 */ |
|
671 EXPORT_C void CQoSParameters::SetHeaderMode(TBool aHeadersIncluded) |
|
672 { |
|
673 iQoS.SetHeaderMode(aHeadersIncluded); |
|
674 } |
|
675 |
|
676 EXPORT_C TInt CQoSParameters::GetDownLinkDelayVariation() const |
|
677 { |
|
678 return KErrNotSupported; |
|
679 } |
|
680 |
|
681 |
|
682 EXPORT_C TInt CQoSParameters::GetUpLinkDelayVariation() const |
|
683 { |
|
684 return KErrNotSupported; |
|
685 } |
|
686 |
|
687 |
|
688 EXPORT_C void CQoSParameters::SetDownLinkDelayVariation(TInt /* aVariation */) |
|
689 { |
|
690 // This method is not yet supported |
|
691 } |
|
692 |
|
693 |
|
694 EXPORT_C void CQoSParameters::SetUpLinkDelayVariation(TInt /* aVariation */) |
|
695 { |
|
696 // This method is not yet supported |
|
697 } |
|
698 |
|
699 |