~ubuntu-branches/ubuntu/vivid/linphone/vivid

« back to all changes in this revision

Viewing changes to oRTP/docs/html/ortp-multiplexing-sessions---in-a-one-thread-design.html

  • Committer: Bazaar Package Importer
  • Author(s): Samuel Mimram
  • Date: 2006-11-15 10:34:50 UTC
  • mfrom: (1.2.1 upstream) (2.1.8 feisty)
  • Revision ID: james.westby@ubuntu.com-20061115103450-qgafwcks2lkhctlj
* New upstream release.
* Enable video support.
* Fix mismatched #endif in mscommon.h, closes: #398307.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
 
2
<HTML
 
3
><HEAD
 
4
><TITLE
 
5
>Multiplexing sessions (in a one thread design)</TITLE
 
6
><META
 
7
NAME="GENERATOR"
 
8
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
 
9
REL="HOME"
 
10
TITLE="oRTP Reference Manual"
 
11
HREF="book1.html"><LINK
 
12
REL="UP"
 
13
TITLE="oRTP API"
 
14
HREF="ortpapi.html"><LINK
 
15
REL="PREVIOUS"
 
16
TITLE="RTP payloads and profiles"
 
17
HREF="ortp-rtp-payloads-and-profiles.html"><LINK
 
18
REL="NEXT"
 
19
TITLE="Telephone events (RFC2833)"
 
20
HREF="ortp-telephone-events---rfc2833-.html"><STYLE
 
21
TYPE="text/css"
 
22
>.synopsis, .classsynopsis {
 
23
    background: #eeeeee;
 
24
    border: solid 1px #aaaaaa;
 
25
    padding: 0.5em;
 
26
}
 
27
.programlisting {
 
28
    background: #eeeeff;
 
29
    border: solid 1px #aaaaff;
 
30
    padding: 0.5em;
 
31
}
 
32
.variablelist {
 
33
    padding: 4px;
 
34
    margin-left: 3em;
 
35
}
 
36
.navigation {
 
37
    background: #ffeeee;
 
38
    border: solid 1px #ffaaaa;
 
39
    margin-top: 0.5em;
 
40
    margin-bottom: 0.5em;
 
41
}
 
42
.navigation a {
 
43
    color: #770000;
 
44
}
 
45
.navigation a:visited {
 
46
    color: #550000;
 
47
}
 
48
.navigation .title {
 
49
    font-size: 200%;
 
50
}</STYLE
 
51
></HEAD
 
52
><BODY
 
53
CLASS="REFENTRY"
 
54
BGCOLOR="#FFFFFF"
 
55
TEXT="#000000"
 
56
LINK="#0000FF"
 
57
VLINK="#840084"
 
58
ALINK="#0000FF"
 
59
><TABLE
 
60
WIDTH="100%"
 
61
CLASS="navigation"
 
62
SUMMARY="Navigation header"
 
63
CELLPADDING="2"
 
64
CELLSPACING="2"
 
65
><TR
 
66
VALIGN="middle"
 
67
><TD
 
68
><A
 
69
ACCESSKEY="p"
 
70
HREF="ortp-rtp-payloads-and-profiles.html"
 
71
><IMG
 
72
SRC="left.png"
 
73
WIDTH="24"
 
74
HEIGHT="24"
 
75
BORDER="0"
 
76
ALT="Prev"></A
 
77
></TD
 
78
><TD
 
79
><A
 
80
ACCESSKEY="u"
 
81
HREF="ortpapi.html"
 
82
><IMG
 
83
SRC="up.png"
 
84
WIDTH="24"
 
85
HEIGHT="24"
 
86
BORDER="0"
 
87
ALT="Up"></A
 
88
></TD
 
89
><TD
 
90
><A
 
91
ACCESSKEY="h"
 
92
HREF="book1.html"
 
93
><IMG
 
94
SRC="home.png"
 
95
WIDTH="24"
 
96
HEIGHT="24"
 
97
BORDER="0"
 
98
ALT="Home"></A
 
99
></TD
 
100
><TH
 
101
WIDTH="100%"
 
102
align="center"
 
103
>oRTP Reference Manual</TH
 
104
><TD
 
105
><A
 
106
ACCESSKEY="n"
 
107
HREF="ortp-telephone-events---rfc2833-.html"
 
108
><IMG
 
109
SRC="right.png"
 
110
WIDTH="24"
 
111
HEIGHT="24"
 
112
BORDER="0"
 
113
ALT="Next"></A
 
114
></TD
 
115
></TR
 
116
></TABLE
 
117
><H1
 
118
><A
 
119
NAME="ORTP-MULTIPLEXING-SESSIONS---IN-A-ONE-THREAD-DESIGN"
 
120
></A
 
121
>Multiplexing sessions (in a one thread design)</H1
 
122
><DIV
 
123
CLASS="REFNAMEDIV"
 
124
><A
 
125
NAME="AEN1359"
 
126
></A
 
127
><H2
 
128
>Name</H2
 
129
>Multiplexing sessions (in a one thread design)&nbsp;--&nbsp;The SessionSet API allows applications to make I/O on mutilple rtp sessions
 
130
without making blocking I/O, but keeping the main process synchronised.</DIV
 
131
><DIV
 
132
CLASS="REFSYNOPSISDIV"
 
133
><A
 
134
NAME="SYNOPSIS"
 
135
></A
 
136
><H2
 
137
>Synopsis</H2
 
138
><PRE
 
139
CLASS="SYNOPSIS"
 
140
>&#13;#include &lt;ortp.h&gt;
 
141
 
 
142
 
 
143
            <A
 
144
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
145
>SessionSet</A
 
146
>;
 
147
<A
 
148
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
149
>SessionSet</A
 
150
>* <A
 
151
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSION-SET-NEW"
 
152
>session_set_new</A
 
153
>                 ();
 
154
#define     <A
 
155
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSION-SET-INIT"
 
156
>session_set_init</A
 
157
>                (ss)
 
158
#define     <A
 
159
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSION-SET-SET"
 
160
>session_set_set</A
 
161
>                 (ss,rtpsession)
 
162
#define     <A
 
163
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSION-SET-IS-SET"
 
164
>session_set_is_set</A
 
165
>              (ss,rtpsession)
 
166
#define     <A
 
167
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSION-SET-CLR"
 
168
>session_set_clr</A
 
169
>                 (ss,rtpsession)
 
170
int         <A
 
171
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSION-SET-SELECT"
 
172
>session_set_select</A
 
173
>              (<A
 
174
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
175
>SessionSet</A
 
176
> *recvs,
 
177
                                             <A
 
178
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
179
>SessionSet</A
 
180
> *sends,
 
181
                                             <A
 
182
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
183
>SessionSet</A
 
184
> *errors);
 
185
void        <A
 
186
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSION-SET-DESTROY"
 
187
>session_set_destroy</A
 
188
>             (<A
 
189
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
190
>SessionSet</A
 
191
> *set);</PRE
 
192
></DIV
 
193
><DIV
 
194
CLASS="REFSECT1"
 
195
><A
 
196
NAME="DESC"
 
197
></A
 
198
><H2
 
199
>Description</H2
 
200
><P
 
201
>The scheduled mode must be enabled for all rtp session that are managed through the 
 
202
SessionSet API. See <A
 
203
HREF="ortp-rtpsession-api.html#RTP-SESSION-SET-SCHEDULING-MODE"
 
204
><CODE
 
205
CLASS="FUNCTION"
 
206
>rtp_session_set_scheduling_mode()</CODE
 
207
></A
 
208
>.</P
 
209
></DIV
 
210
><DIV
 
211
CLASS="REFSECT1"
 
212
><A
 
213
NAME="DETAILS"
 
214
></A
 
215
><H2
 
216
>Details</H2
 
217
><DIV
 
218
CLASS="REFSECT2"
 
219
><A
 
220
NAME="AEN1387"
 
221
></A
 
222
><H3
 
223
><A
 
224
NAME="SESSIONSET"
 
225
></A
 
226
>SessionSet</H3
 
227
><PRE
 
228
CLASS="PROGRAMLISTING"
 
229
>typedef struct {
 
230
        ortp_fd_set rtpset;
 
231
} SessionSet;</PRE
 
232
><P
 
233
></P
 
234
></DIV
 
235
><HR><DIV
 
236
CLASS="REFSECT2"
 
237
><A
 
238
NAME="AEN1394"
 
239
></A
 
240
><H3
 
241
><A
 
242
NAME="SESSION-SET-NEW"
 
243
></A
 
244
>session_set_new ()</H3
 
245
><PRE
 
246
CLASS="PROGRAMLISTING"
 
247
><A
 
248
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
249
>SessionSet</A
 
250
>* session_set_new                 ();</PRE
 
251
><P
 
252
>Allocates and initialize a new empty session set.</P
 
253
><P
 
254
></P
 
255
><P
 
256
></P
 
257
><TABLE
 
258
CLASS="variablelist"
 
259
BORDER="0"
 
260
CELLSPACING="0"
 
261
CELLPADDING="4"
 
262
><TBODY
 
263
><TR
 
264
><TD
 
265
ALIGN="LEFT"
 
266
VALIGN="TOP"
 
267
><A
 
268
NAME="AEN1404"><SPAN
 
269
STYLE="white-space: nowrap"
 
270
><SPAN
 
271
CLASS="emphasis"
 
272
><I
 
273
CLASS="EMPHASIS"
 
274
>Returns</I
 
275
></SPAN
 
276
>&nbsp;:</SPAN
 
277
></TD
 
278
><TD
 
279
ALIGN="LEFT"
 
280
VALIGN="TOP"
 
281
><P
 
282
> the session set.</P
 
283
></TD
 
284
></TR
 
285
></TBODY
 
286
></TABLE
 
287
></DIV
 
288
><HR><DIV
 
289
CLASS="REFSECT2"
 
290
><A
 
291
NAME="AEN1409"
 
292
></A
 
293
><H3
 
294
><A
 
295
NAME="SESSION-SET-INIT"
 
296
></A
 
297
>session_set_init()</H3
 
298
><PRE
 
299
CLASS="PROGRAMLISTING"
 
300
>#define session_set_init(ss)           ORTP_FD_ZERO(&amp;(ss)-&gt;rtpset)</PRE
 
301
><P
 
302
>Initializes a session set. It is unusefull to call this function on a session set object
 
303
returned by <A
 
304
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSION-SET-NEW"
 
305
><CODE
 
306
CLASS="FUNCTION"
 
307
>session_set_new()</CODE
 
308
></A
 
309
>.</P
 
310
><P
 
311
></P
 
312
><P
 
313
></P
 
314
><TABLE
 
315
CLASS="variablelist"
 
316
BORDER="0"
 
317
CELLSPACING="0"
 
318
CELLPADDING="4"
 
319
><TBODY
 
320
><TR
 
321
><TD
 
322
ALIGN="LEFT"
 
323
VALIGN="TOP"
 
324
><A
 
325
NAME="AEN1420"><SPAN
 
326
STYLE="white-space: nowrap"
 
327
><CODE
 
328
CLASS="PARAMETER"
 
329
>ss</CODE
 
330
>&nbsp;:</SPAN
 
331
></TD
 
332
><TD
 
333
ALIGN="LEFT"
 
334
VALIGN="TOP"
 
335
><P
 
336
>        a SessionSet statically allocated.</P
 
337
></TD
 
338
></TR
 
339
></TBODY
 
340
></TABLE
 
341
></DIV
 
342
><HR><DIV
 
343
CLASS="REFSECT2"
 
344
><A
 
345
NAME="AEN1425"
 
346
></A
 
347
><H3
 
348
><A
 
349
NAME="SESSION-SET-SET"
 
350
></A
 
351
>session_set_set()</H3
 
352
><PRE
 
353
CLASS="PROGRAMLISTING"
 
354
>#define session_set_set(ss,rtpsession)         ORTP_FD_SET((rtpsession)-&gt;mask_pos,&amp;(ss)-&gt;rtpset)</PRE
 
355
><P
 
356
>This macro adds rtp session <CODE
 
357
CLASS="PARAMETER"
 
358
>_session</CODE
 
359
> to set <CODE
 
360
CLASS="PARAMETER"
 
361
>_set</CODE
 
362
>.</P
 
363
><P
 
364
></P
 
365
><P
 
366
></P
 
367
><TABLE
 
368
CLASS="variablelist"
 
369
BORDER="0"
 
370
CELLSPACING="0"
 
371
CELLPADDING="4"
 
372
><TBODY
 
373
><TR
 
374
><TD
 
375
ALIGN="LEFT"
 
376
VALIGN="TOP"
 
377
><A
 
378
NAME="AEN1436"><SPAN
 
379
STYLE="white-space: nowrap"
 
380
><CODE
 
381
CLASS="PARAMETER"
 
382
>ss</CODE
 
383
>&nbsp;:</SPAN
 
384
></TD
 
385
><TD
 
386
ALIGN="LEFT"
 
387
VALIGN="TOP"
 
388
><P
 
389
>               a set (<A
 
390
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
391
><SPAN
 
392
CLASS="TYPE"
 
393
>SessionSet</SPAN
 
394
></A
 
395
> object)</P
 
396
></TD
 
397
></TR
 
398
><TR
 
399
><TD
 
400
ALIGN="LEFT"
 
401
VALIGN="TOP"
 
402
><A
 
403
NAME="AEN1443"><SPAN
 
404
STYLE="white-space: nowrap"
 
405
><CODE
 
406
CLASS="PARAMETER"
 
407
>rtpsession</CODE
 
408
>&nbsp;:</SPAN
 
409
></TD
 
410
><TD
 
411
ALIGN="LEFT"
 
412
VALIGN="TOP"
 
413
><P
 
414
>       a rtp session</P
 
415
></TD
 
416
></TR
 
417
></TBODY
 
418
></TABLE
 
419
></DIV
 
420
><HR><DIV
 
421
CLASS="REFSECT2"
 
422
><A
 
423
NAME="AEN1448"
 
424
></A
 
425
><H3
 
426
><A
 
427
NAME="SESSION-SET-IS-SET"
 
428
></A
 
429
>session_set_is_set()</H3
 
430
><PRE
 
431
CLASS="PROGRAMLISTING"
 
432
>#define session_set_is_set(ss,rtpsession)      ORTP_FD_ISSET((rtpsession)-&gt;mask_pos,&amp;(ss)-&gt;rtpset)</PRE
 
433
><P
 
434
>This macro tests if <CODE
 
435
CLASS="PARAMETER"
 
436
>_session</CODE
 
437
> is part of <CODE
 
438
CLASS="PARAMETER"
 
439
>_set</CODE
 
440
>. 1 is returned if true, 0 else.</P
 
441
><P
 
442
></P
 
443
><P
 
444
></P
 
445
><TABLE
 
446
CLASS="variablelist"
 
447
BORDER="0"
 
448
CELLSPACING="0"
 
449
CELLPADDING="4"
 
450
><TBODY
 
451
><TR
 
452
><TD
 
453
ALIGN="LEFT"
 
454
VALIGN="TOP"
 
455
><A
 
456
NAME="AEN1459"><SPAN
 
457
STYLE="white-space: nowrap"
 
458
><CODE
 
459
CLASS="PARAMETER"
 
460
>ss</CODE
 
461
>&nbsp;:</SPAN
 
462
></TD
 
463
><TD
 
464
ALIGN="LEFT"
 
465
VALIGN="TOP"
 
466
><P
 
467
>               a set (<A
 
468
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
469
><SPAN
 
470
CLASS="TYPE"
 
471
>SessionSet</SPAN
 
472
></A
 
473
> object)</P
 
474
></TD
 
475
></TR
 
476
><TR
 
477
><TD
 
478
ALIGN="LEFT"
 
479
VALIGN="TOP"
 
480
><A
 
481
NAME="AEN1466"><SPAN
 
482
STYLE="white-space: nowrap"
 
483
><CODE
 
484
CLASS="PARAMETER"
 
485
>rtpsession</CODE
 
486
>&nbsp;:</SPAN
 
487
></TD
 
488
><TD
 
489
ALIGN="LEFT"
 
490
VALIGN="TOP"
 
491
><P
 
492
>       a rtp session</P
 
493
></TD
 
494
></TR
 
495
></TBODY
 
496
></TABLE
 
497
></DIV
 
498
><HR><DIV
 
499
CLASS="REFSECT2"
 
500
><A
 
501
NAME="AEN1471"
 
502
></A
 
503
><H3
 
504
><A
 
505
NAME="SESSION-SET-CLR"
 
506
></A
 
507
>session_set_clr()</H3
 
508
><PRE
 
509
CLASS="PROGRAMLISTING"
 
510
>#define session_set_clr(ss,rtpsession)         ORTP_FD_CLR((rtpsession)-&gt;mask_pos,&amp;(ss)-&gt;rtpset)</PRE
 
511
><P
 
512
>Removes the <CODE
 
513
CLASS="PARAMETER"
 
514
>_session</CODE
 
515
> from the _set.</P
 
516
><P
 
517
></P
 
518
><P
 
519
></P
 
520
><TABLE
 
521
CLASS="variablelist"
 
522
BORDER="0"
 
523
CELLSPACING="0"
 
524
CELLPADDING="4"
 
525
><TBODY
 
526
><TR
 
527
><TD
 
528
ALIGN="LEFT"
 
529
VALIGN="TOP"
 
530
><A
 
531
NAME="AEN1481"><SPAN
 
532
STYLE="white-space: nowrap"
 
533
><CODE
 
534
CLASS="PARAMETER"
 
535
>ss</CODE
 
536
>&nbsp;:</SPAN
 
537
></TD
 
538
><TD
 
539
ALIGN="LEFT"
 
540
VALIGN="TOP"
 
541
><P
 
542
>       a set of sessions.</P
 
543
></TD
 
544
></TR
 
545
><TR
 
546
><TD
 
547
ALIGN="LEFT"
 
548
VALIGN="TOP"
 
549
><A
 
550
NAME="AEN1486"><SPAN
 
551
STYLE="white-space: nowrap"
 
552
><CODE
 
553
CLASS="PARAMETER"
 
554
>rtpsession</CODE
 
555
>&nbsp;:</SPAN
 
556
></TD
 
557
><TD
 
558
ALIGN="LEFT"
 
559
VALIGN="TOP"
 
560
><P
 
561
> a rtp session.</P
 
562
></TD
 
563
></TR
 
564
></TBODY
 
565
></TABLE
 
566
></DIV
 
567
><HR><DIV
 
568
CLASS="REFSECT2"
 
569
><A
 
570
NAME="AEN1491"
 
571
></A
 
572
><H3
 
573
><A
 
574
NAME="SESSION-SET-SELECT"
 
575
></A
 
576
>session_set_select ()</H3
 
577
><PRE
 
578
CLASS="PROGRAMLISTING"
 
579
>int         session_set_select              (<A
 
580
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
581
>SessionSet</A
 
582
> *recvs,
 
583
                                             <A
 
584
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
585
>SessionSet</A
 
586
> *sends,
 
587
                                             <A
 
588
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
589
>SessionSet</A
 
590
> *errors);</PRE
 
591
><P
 
592
>This function performs similarly as libc <GTKDOCLINK
 
593
HREF="SELECT"
 
594
><CODE
 
595
CLASS="FUNCTION"
 
596
>select()</CODE
 
597
></GTKDOCLINK
 
598
> function, but performs on <A
 
599
HREF="ortp-rtpsession-api.html#RTPSESSION"
 
600
><SPAN
 
601
CLASS="TYPE"
 
602
>RtpSession</SPAN
 
603
></A
 
604
 
605
instead of file descriptors.
 
606
<A
 
607
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSION-SET-SELECT"
 
608
><CODE
 
609
CLASS="FUNCTION"
 
610
>session_set_select()</CODE
 
611
></A
 
612
> suspends the calling process until some events arrive on one of the
 
613
three sets passed in argument. Two of the sets can be NULL.
 
614
The first set <CODE
 
615
CLASS="PARAMETER"
 
616
>recvs</CODE
 
617
> is interpreted as a set of RtpSession waiting for receive events:
 
618
a new buffer (perhaps empty) is availlable on one or more sessions of the set, or the last
 
619
receive operation with <A
 
620
HREF="ortp-rtpsession-api.html#RTP-SESSION-RECV-WITH-TS"
 
621
><CODE
 
622
CLASS="FUNCTION"
 
623
>rtp_session_recv_with_ts()</CODE
 
624
></A
 
625
> would have finished if it were in 
 
626
blocking mode.
 
627
The second set is interpreted as a set of RtpSession waiting for send events, i.e. the last
 
628
<A
 
629
HREF="ortp-rtpsession-api.html#RTP-SESSION-SEND-WITH-TS"
 
630
><CODE
 
631
CLASS="FUNCTION"
 
632
>rtp_session_send_with_ts()</CODE
 
633
></A
 
634
> call on a session would have finished if it were in blocking mode.</P
 
635
><P
 
636
>When some events arrived on some of sets, then the function returns and sets are changed
 
637
to indicate the sessions where events happened.
 
638
Sessions can be added to sets using <A
 
639
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSION-SET-SET"
 
640
><CODE
 
641
CLASS="FUNCTION"
 
642
>session_set_set()</CODE
 
643
></A
 
644
>, a session has to be tested to be 
 
645
part of a set using <A
 
646
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSION-SET-IS-SET"
 
647
><CODE
 
648
CLASS="FUNCTION"
 
649
>session_set_is_set()</CODE
 
650
></A
 
651
>.</P
 
652
><P
 
653
></P
 
654
><P
 
655
></P
 
656
><TABLE
 
657
CLASS="variablelist"
 
658
BORDER="0"
 
659
CELLSPACING="0"
 
660
CELLPADDING="4"
 
661
><TBODY
 
662
><TR
 
663
><TD
 
664
ALIGN="LEFT"
 
665
VALIGN="TOP"
 
666
><A
 
667
NAME="AEN1520"><SPAN
 
668
STYLE="white-space: nowrap"
 
669
><CODE
 
670
CLASS="PARAMETER"
 
671
>recvs</CODE
 
672
>&nbsp;:</SPAN
 
673
></TD
 
674
><TD
 
675
ALIGN="LEFT"
 
676
VALIGN="TOP"
 
677
><P
 
678
>               a set of rtp sessions to be watched for read events</P
 
679
></TD
 
680
></TR
 
681
><TR
 
682
><TD
 
683
ALIGN="LEFT"
 
684
VALIGN="TOP"
 
685
><A
 
686
NAME="AEN1525"><SPAN
 
687
STYLE="white-space: nowrap"
 
688
><CODE
 
689
CLASS="PARAMETER"
 
690
>sends</CODE
 
691
>&nbsp;:</SPAN
 
692
></TD
 
693
><TD
 
694
ALIGN="LEFT"
 
695
VALIGN="TOP"
 
696
><P
 
697
>               a set of rtp sessions to be watched for write events</P
 
698
></TD
 
699
></TR
 
700
><TR
 
701
><TD
 
702
ALIGN="LEFT"
 
703
VALIGN="TOP"
 
704
><A
 
705
NAME="AEN1530"><SPAN
 
706
STYLE="white-space: nowrap"
 
707
><CODE
 
708
CLASS="PARAMETER"
 
709
>errors</CODE
 
710
>&nbsp;:</SPAN
 
711
></TD
 
712
><TD
 
713
ALIGN="LEFT"
 
714
VALIGN="TOP"
 
715
><P
 
716
>               a set of rtp sessions to be watched for errors</P
 
717
></TD
 
718
></TR
 
719
><TR
 
720
><TD
 
721
ALIGN="LEFT"
 
722
VALIGN="TOP"
 
723
><A
 
724
NAME="AEN1535"><SPAN
 
725
STYLE="white-space: nowrap"
 
726
><SPAN
 
727
CLASS="emphasis"
 
728
><I
 
729
CLASS="EMPHASIS"
 
730
>Returns</I
 
731
></SPAN
 
732
>&nbsp;:</SPAN
 
733
></TD
 
734
><TD
 
735
ALIGN="LEFT"
 
736
VALIGN="TOP"
 
737
><P
 
738
> the number of sessions on which the selected events happened.</P
 
739
></TD
 
740
></TR
 
741
></TBODY
 
742
></TABLE
 
743
></DIV
 
744
><HR><DIV
 
745
CLASS="REFSECT2"
 
746
><A
 
747
NAME="AEN1540"
 
748
></A
 
749
><H3
 
750
><A
 
751
NAME="SESSION-SET-DESTROY"
 
752
></A
 
753
>session_set_destroy ()</H3
 
754
><PRE
 
755
CLASS="PROGRAMLISTING"
 
756
>void        session_set_destroy             (<A
 
757
HREF="ortp-multiplexing-sessions---in-a-one-thread-design.html#SESSIONSET"
 
758
>SessionSet</A
 
759
> *set);</PRE
 
760
><P
 
761
></P
 
762
><P
 
763
></P
 
764
><P
 
765
></P
 
766
><TABLE
 
767
CLASS="variablelist"
 
768
BORDER="0"
 
769
CELLSPACING="0"
 
770
CELLPADDING="4"
 
771
><TBODY
 
772
><TR
 
773
><TD
 
774
ALIGN="LEFT"
 
775
VALIGN="TOP"
 
776
><A
 
777
NAME="AEN1551"><SPAN
 
778
STYLE="white-space: nowrap"
 
779
><CODE
 
780
CLASS="PARAMETER"
 
781
>set</CODE
 
782
>&nbsp;:</SPAN
 
783
></TD
 
784
><TD
 
785
ALIGN="LEFT"
 
786
VALIGN="TOP"
 
787
><P
 
788
>       a SessionSet
 
789
Destroys a session set.</P
 
790
></TD
 
791
></TR
 
792
></TBODY
 
793
></TABLE
 
794
></DIV
 
795
></DIV
 
796
><DIV
 
797
CLASS="REFSECT1"
 
798
><A
 
799
NAME="AEN1556"
 
800
></A
 
801
><H2
 
802
>See Also</H2
 
803
><P
 
804
>See the mrtprecv.c and mrtpsend.c programs included in the library that uses
 
805
the SessionSet API to send or receive multiple RTP streams in one thread design.</P
 
806
></DIV
 
807
><TABLE
 
808
CLASS="navigation"
 
809
WIDTH="100%"
 
810
SUMMARY="Navigation footer"
 
811
CELLPADDING="2"
 
812
CELLSPACING="2"
 
813
><TR
 
814
VALIGN="middle"
 
815
><TD
 
816
ALIGN="left"
 
817
><A
 
818
ACCESSKEY="p"
 
819
HREF="ortp-rtp-payloads-and-profiles.html"
 
820
><B
 
821
>&lt;&lt;&lt;&nbsp;RTP payloads and profiles</B
 
822
></A
 
823
></TD
 
824
><TD
 
825
ALIGN="right"
 
826
><A
 
827
ACCESSKEY="n"
 
828
HREF="ortp-telephone-events---rfc2833-.html"
 
829
><B
 
830
>Telephone events (RFC2833)&nbsp;&gt;&gt;&gt;</B
 
831
></A
 
832
></TD
 
833
></TR
 
834
></TABLE
 
835
></BODY
 
836
></HTML
 
837
>
 
 
b'\\ No newline at end of file'