OPAL
Version 3.12.5
Main Page
Related Pages
Namespaces
Data Structures
Files
File List
Globals
iax2medstrm.h
Go to the documentation of this file.
1
/*
2
*
3
* Inter Asterisk Exchange 2
4
*
5
* Open Phone Abstraction Library (OPAL)
6
*
7
* Extension of the Opal Media stream, where the media from the IAX2 side is
8
* linked to the OPAL
9
*
10
* Copyright (c) 2005 Indranet Technologies Ltd.
11
*
12
* The contents of this file are subject to the Mozilla Public License
13
* Version 1.0 (the "License"); you may not use this file except in
14
* compliance with the License. You may obtain a copy of the License at
15
* http://www.mozilla.org/MPL/
16
*
17
* Software distributed under the License is distributed on an "AS IS"
18
* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
19
* the License for the specific language governing rights and limitations
20
* under the License.
21
*
22
* The Original Code is Open Phone Abstraction Library.
23
*
24
* The Initial Developer of the Original Code is Indranet Technologies Ltd.
25
*
26
* The author of this code is Derek J Smithies
27
*
28
* $Revision: 27154 $
29
* $Author: rjongbloed $
30
* $Date: 2012-03-07 19:21:33 -0600 (Wed, 07 Mar 2012) $
31
*/
32
33
#ifndef OPAL_IAX2_MEDIASTRM_H
34
#define OPAL_IAX2_MEDIASTRM_H
35
36
#ifdef P_USE_PRAGMA
37
#pragma interface
38
#endif
39
40
#include <
opal/buildopts.h
>
41
42
#if OPAL_IAX2
43
44
#include <
opal/mediafmt.h
>
45
#include <
iax2/iax2con.h
>
46
47
class
OpalMediaPatch
;
48
class
OpalLine
;
49
50
54
class
OpalIAX2MediaStream
:
public
OpalMediaStream
55
{
56
PCLASSINFO(
OpalIAX2MediaStream
,
OpalMediaStream
);
62
OpalIAX2MediaStream
(
63
IAX2Connection
&con,
64
const
OpalMediaFormat
&
mediaFormat
,
65
unsigned
sessionID
,
66
PBoolean isSource
67
);
70
~
OpalIAX2MediaStream
();
72
73
74
75
public
:
82
virtual
PBoolean
Open
();
83
89
virtual
PBoolean
Start
();
90
96
virtual
PBoolean
ReadPacket
(
97
RTP_DataFrame
& packet
98
);
99
103
virtual
PBoolean
WriteData
(
104
const
BYTE * data,
105
PINDEX length,
106
PINDEX & written
107
);
108
113
virtual
PBoolean
IsSynchronous
()
const
;
114
116
117
protected
:
118
virtual
void
InternalClose
() { }
119
121
IAX2Connection
&
connection
;
122
126
PBYTEArray
pendingData
;
127
};
128
129
130
#endif // OPAL_IAX2
131
132
#endif // OPAL_IAX2_MEDIASTRM_H
133
134
/* The comment below is magic for those who use emacs to edit this file.
135
* With the comment below, the tab key does auto indent to 2 spaces.
136
*
137
* Local Variables:
138
* mode:c
139
* c-basic-offset:2
140
* End:
141
*/
include
iax2
iax2medstrm.h
Generated on Tue Sep 3 2013 06:40:22 for OPAL by
1.8.4