Skip to content
项目
群组
代码片段
帮助
正在加载...
登录
切换导航
F
freeswitch
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
张华
freeswitch
Commits
0925d04a
提交
0925d04a
authored
5月 03, 2010
作者:
Moises Silva
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
freetdm: documentation
上级
616de3c6
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
37 行增加
和
1309 行删除
+37
-1309
Doxygen.conf
libs/freetdm/docs/Doxygen.conf
+8
-20
freetdm.doxygen
libs/freetdm/freetdm.doxygen
+0
-1252
ftdm_io.c
libs/freetdm/src/ftdm_io.c
+4
-28
freetdm.h
libs/freetdm/src/include/freetdm.h
+25
-9
没有找到文件。
libs/freetdm/docs/Doxygen.conf
浏览文件 @
0925d04a
...
@@ -3,9 +3,9 @@
...
@@ -3,9 +3,9 @@
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# Project related configuration options
# Project related configuration options
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
PROJECT_NAME
=
OpenZAP
PROJECT_NAME
=
FreeTDM
PROJECT_NUMBER
=
PROJECT_NUMBER
=
OUTPUT_DIRECTORY
=
.
OUTPUT_DIRECTORY
=
docs
/
CREATE_SUBDIRS
=
NO
CREATE_SUBDIRS
=
NO
OUTPUT_LANGUAGE
=
English
OUTPUT_LANGUAGE
=
English
USE_WINDOWS_ENCODING
=
YES
USE_WINDOWS_ENCODING
=
YES
...
@@ -39,7 +39,7 @@ OPTIMIZE_OUTPUT_FOR_C = YES
...
@@ -39,7 +39,7 @@ OPTIMIZE_OUTPUT_FOR_C = YES
OPTIMIZE_OUTPUT_JAVA
=
NO
OPTIMIZE_OUTPUT_JAVA
=
NO
DISTRIBUTE_GROUP_DOC
=
NO
DISTRIBUTE_GROUP_DOC
=
NO
SUBGROUPING
=
YES
SUBGROUPING
=
YES
IGNORE_PREFIX
=
zap_
ZAP
_
Q921
Q931
IGNORE_PREFIX
=
ftdm_
FTDM
_
Q921
Q931
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# Build related configuration options
# Build related configuration options
...
@@ -83,18 +83,7 @@ WARN_LOGFILE =
...
@@ -83,18 +83,7 @@ WARN_LOGFILE =
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# configuration options related to the input files
# configuration options related to the input files
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
INPUT
= ../
src
../
src
/
include
\
INPUT
=
src
/
include
/
freetdm
.
h
../
src
/
isdn
../
src
/
isdn
/
include
\
../
mod_openzap
../ \
../
src
/
ozmod
\
../
src
/
ozmod
/
ozmod_analog
\
../
src
/
ozmod
/
ozmod_analog_em
\
../
src
/
ozmod
/
ozmod_isdn
\
../
src
/
ozmod
/
ozmod_pika
\
../
src
/
ozmod
/
ozmod_skel
\
../
src
/
ozmod
/
ozmod_ss7_boost
\
../
src
/
ozmod
/
ozmod_wanpipe
\
../
src
/
ozmod
/
ozmod_zt
FILE_PATTERNS
= *.
c
\
FILE_PATTERNS
= *.
c
\
*.
cc
\
*.
cc
\
...
@@ -149,7 +138,7 @@ VERBATIM_HEADERS = NO
...
@@ -149,7 +138,7 @@ VERBATIM_HEADERS = NO
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
ALPHABETICAL_INDEX
=
YES
ALPHABETICAL_INDEX
=
YES
COLS_IN_ALPHA_INDEX
=
1
COLS_IN_ALPHA_INDEX
=
1
IGNORE_PREFIX
=
zap
_
IGNORE_PREFIX
=
ftdm
_
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# configuration options related to the HTML output
# configuration options related to the HTML output
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
...
@@ -161,7 +150,7 @@ HTML_FOOTER =
...
@@ -161,7 +150,7 @@ HTML_FOOTER =
HTML_STYLESHEET
=
HTML_STYLESHEET
=
HTML_ALIGN_MEMBERS
=
YES
HTML_ALIGN_MEMBERS
=
YES
GENERATE_HTMLHELP
=
NO
GENERATE_HTMLHELP
=
NO
CHM_FILE
=
free
switch
.
chm
CHM_FILE
=
free
tdm
.
chm
HHC_LOCATION
=
HHC_LOCATION
=
GENERATE_CHI
=
YES
GENERATE_CHI
=
YES
BINARY_TOC
=
NO
BINARY_TOC
=
NO
...
@@ -230,9 +219,8 @@ EXPAND_ONLY_PREDEF = NO
...
@@ -230,9 +219,8 @@ EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES
=
NO
SEARCH_INCLUDES
=
NO
INCLUDE_PATH
=
INCLUDE_PATH
=
INCLUDE_FILE_PATTERNS
= *.
h
INCLUDE_FILE_PATTERNS
= *.
h
PREDEFINED
=
ZAP_DECLARE
(
x
)=
x
\
PREDEFINED
=
FT_DECLARE
(
x
)=
x
\
APR_DECLARE
(
x
)=
x
\
FT_MOD_DECLARE
(
x
)=
x
\
ZAP_MOD_DECLARE
(
x
)=
x
\
DoxyDefine
(
x
)=
x
DoxyDefine
(
x
)=
x
EXPAND_AS_DEFINED
=
NO
EXPAND_AS_DEFINED
=
NO
...
...
libs/freetdm/freetdm.doxygen
deleted
100644 → 0
浏览文件 @
616de3c6
差异被折叠。
点击展开。
libs/freetdm/src/ftdm_io.c
浏览文件 @
0925d04a
...
@@ -512,30 +512,6 @@ static void ftdm_span_add(ftdm_span_t *span)
...
@@ -512,30 +512,6 @@ static void ftdm_span_add(ftdm_span_t *span)
ftdm_mutex_unlock
(
globals
.
span_mutex
);
ftdm_mutex_unlock
(
globals
.
span_mutex
);
}
}
#if 0
static void ftdm_span_del(ftdm_span_t *span)
{
ftdm_span_t *last = NULL, *sp;
ftdm_mutex_lock(globals.span_mutex);
for (sp = globals.spans; sp; sp = sp->next) {
if (sp == span) {
if (last) {
last->next = sp->next;
} else {
globals.spans = sp->next;
}
hashtable_remove(globals.span_hash, (void *)sp->name);
break;
}
last = sp;
}
ftdm_mutex_unlock(globals.span_mutex);
}
#endif
FT_DECLARE
(
ftdm_status_t
)
ftdm_span_stop
(
ftdm_span_t
*
span
)
FT_DECLARE
(
ftdm_status_t
)
ftdm_span_stop
(
ftdm_span_t
*
span
)
{
{
if
(
span
->
stop
)
{
if
(
span
->
stop
)
{
...
@@ -3066,10 +3042,10 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_write(ftdm_channel_t *ftdmchan, void *dat
...
@@ -3066,10 +3042,10 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_write(ftdm_channel_t *ftdmchan, void *dat
}
}
if
(
!
ftdm_test_flag
(
ftdmchan
,
FTDM_CHANNEL_OPEN
))
{
if
(
!
ftdm_test_flag
(
ftdmchan
,
FTDM_CHANNEL_OPEN
))
{
snprintf
(
ftdmchan
->
last_error
,
sizeof
(
ftdmchan
->
last_error
),
"channel not open"
);
snprintf
(
ftdmchan
->
last_error
,
sizeof
(
ftdmchan
->
last_error
),
"channel not open"
);
return
FTDM_FAIL
;
return
FTDM_FAIL
;
}
}
if
(
!
ftdmchan
->
fio
->
write
)
{
if
(
!
ftdmchan
->
fio
->
write
)
{
snprintf
(
ftdmchan
->
last_error
,
sizeof
(
ftdmchan
->
last_error
),
"method not implemented"
);
snprintf
(
ftdmchan
->
last_error
,
sizeof
(
ftdmchan
->
last_error
),
"method not implemented"
);
...
@@ -3110,7 +3086,7 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_write(ftdm_channel_t *ftdmchan, void *dat
...
@@ -3110,7 +3086,7 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_write(ftdm_channel_t *ftdmchan, void *dat
wdata
[
i
]
=
ftdmchan
->
txgain_table
[
wdata
[
i
]];
wdata
[
i
]
=
ftdmchan
->
txgain_table
[
wdata
[
i
]];
}
}
}
}
status
=
ftdmchan
->
fio
->
write
(
ftdmchan
,
data
,
datalen
);
status
=
ftdmchan
->
fio
->
write
(
ftdmchan
,
data
,
datalen
);
return
status
;
return
status
;
}
}
...
...
libs/freetdm/src/include/freetdm.h
浏览文件 @
0925d04a
...
@@ -634,7 +634,8 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_clear_token(ftdm_channel_t *ftdmchan, con
...
@@ -634,7 +634,8 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_clear_token(ftdm_channel_t *ftdmchan, con
* \brief Replace the given token with the new token
* \brief Replace the given token with the new token
*
*
* \param ftdmchan The channel where the token is
* \param ftdmchan The channel where the token is
* \param token The token string. If NULL, all tokens in the channel are cleared
* \param old_token The token to replace
* \param new_token The token to put in place
*/
*/
FT_DECLARE
(
void
)
ftdm_channel_replace_token
(
ftdm_channel_t
*
ftdmchan
,
const
char
*
old_token
,
const
char
*
new_token
);
FT_DECLARE
(
void
)
ftdm_channel_replace_token
(
ftdm_channel_t
*
ftdmchan
,
const
char
*
old_token
,
const
char
*
new_token
);
...
@@ -710,6 +711,7 @@ FT_DECLARE(const char *) ftdm_channel_get_last_error(const ftdm_channel_t *ftdmc
...
@@ -710,6 +711,7 @@ FT_DECLARE(const char *) ftdm_channel_get_last_error(const ftdm_channel_t *ftdmc
* \brief Get the current alarm bitmask for the channel
* \brief Get the current alarm bitmask for the channel
*
*
* \param ftdmchan The channel to get the alarm bitmask from
* \param ftdmchan The channel to get the alarm bitmask from
* \param alarmbits The alarm bitmask pointer to store the current alarms (you are responsible for allocation/deallocation)
*
*
* \retval FTDM_SUCCESS success
* \retval FTDM_SUCCESS success
* \retval FTDM_FAIL failure
* \retval FTDM_FAIL failure
...
@@ -729,6 +731,8 @@ FT_DECLARE(ftdm_chan_type_t) ftdm_channel_get_type(const ftdm_channel_t *ftdmcha
...
@@ -729,6 +731,8 @@ FT_DECLARE(ftdm_chan_type_t) ftdm_channel_get_type(const ftdm_channel_t *ftdmcha
* \brief Get the channel type
* \brief Get the channel type
*
*
* \param ftdmchan The channel to get the type from
* \param ftdmchan The channel to get the type from
* \param dtmf DTMF buffer to store the dtmf (you are responsible for its allocation and deallocation)
* \param len The size of the DTMF buffer
*
*
* \retval channel type (FXO, FXS, B-channel, D-channel, etc)
* \retval channel type (FXO, FXS, B-channel, D-channel, etc)
*/
*/
...
@@ -794,15 +798,13 @@ FT_DECLARE(ftdm_status_t) ftdm_span_next_event(ftdm_span_t *span, ftdm_event_t *
...
@@ -794,15 +798,13 @@ FT_DECLARE(ftdm_status_t) ftdm_span_next_event(ftdm_span_t *span, ftdm_event_t *
FT_DECLARE
(
ftdm_status_t
)
ftdm_span_find
(
uint32_t
id
,
ftdm_span_t
**
span
);
FT_DECLARE
(
ftdm_status_t
)
ftdm_span_find
(
uint32_t
id
,
ftdm_span_t
**
span
);
/*!
/*!
* \brief
Find a span by its id
* \brief
Get the last error string for the given span
*
*
* \param id The span id
* \param span The span to get the last error from
* \param span Pointer to store the span if found
*
*
* \retval FTDM_SUCCESS success (span is valid)
* \retval character string for the last error
* \retval FTDM_FAIL failure (span is not valid)
*/
*/
FT_DECLARE
(
const
char
*
)
ftdm_span_get_last_error
(
const
ftdm_span_t
*
ftdmch
an
);
FT_DECLARE
(
const
char
*
)
ftdm_span_get_last_error
(
const
ftdm_span_t
*
sp
an
);
/*!
/*!
* \brief Create a new span (not needed if you are using freetdm.conf)
* \brief Create a new span (not needed if you are using freetdm.conf)
...
@@ -958,9 +960,22 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_read(ftdm_channel_t *ftdmchan, void *data
...
@@ -958,9 +960,22 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_read(ftdm_channel_t *ftdmchan, void *data
/*!
/*!
* \brief Write data to a channel
* \brief Write data to a channel
*
*
* \note The difference between data and datasize is subtle but important.
*
* datalen is a pointer to the size of the actual data that you want to write. This pointer
* will be updated with the number of bytes actually written.
*
* datasize on the other hand is the size of the entire buffer provided in data, whether
* all of that buffer is in use or not is a different matter. The difference becomes
* important only if you are using FreeTDM doing transcoding, for example, providing
* a ulaw frame of 160 bytes but where the I/O device accepts input in signed linear,
* the data to write will be 320 bytes, therefore datasize is expected to be at least
* 320 where datalen would be just 160.
*
* \param ftdmchan The channel to write data to
* \param ftdmchan The channel to write data to
* \param data The pointer to the buffer to write
* \param data The pointer to the buffer to write
* \param datalen The size in bytes of the provided buffer
* \param datasize The maximum number of bytes in data that can be used (in case transcoding is necessary)
* \param datalen The size of the actual data
*
*
* \retval FTDM_SUCCESS success (a suitable channel was found available)
* \retval FTDM_SUCCESS success (a suitable channel was found available)
* \retval FTDM_FAIL failure (no suitable channel was found available)
* \retval FTDM_FAIL failure (no suitable channel was found available)
...
@@ -1024,7 +1039,7 @@ FT_DECLARE(ftdm_status_t) ftdm_configure_span(ftdm_span_t *span, const char *typ
...
@@ -1024,7 +1039,7 @@ FT_DECLARE(ftdm_status_t) ftdm_configure_span(ftdm_span_t *span, const char *typ
* \param span The span to configure
* \param span The span to configure
* \param type The signaling type ("boost", "isdn" and others, this depends on the available signaling modules)
* \param type The signaling type ("boost", "isdn" and others, this depends on the available signaling modules)
* \param sig_cb The callback that the signaling stack will use to notify about events
* \param sig_cb The callback that the signaling stack will use to notify about events
* \param
... variable argument list with "var", value sequence, the variable and values are signaling type dependant
* \param
parameters The array if signaling-specific parameters (the last member of the array MUST have its var member set to NULL, ie: .var = NULL)
*
*
* \retval FTDM_SUCCESS success
* \retval FTDM_SUCCESS success
* \retval FTDM_FAIL failure
* \retval FTDM_FAIL failure
...
@@ -1111,6 +1126,7 @@ FT_DECLARE(ftdm_status_t) ftdm_conf_node_create(const char *name, ftdm_conf_node
...
@@ -1111,6 +1126,7 @@ FT_DECLARE(ftdm_status_t) ftdm_conf_node_create(const char *name, ftdm_conf_node
/*!
/*!
* \brief Adds a new parameter to the specified configuration node
* \brief Adds a new parameter to the specified configuration node
*
*
* \param node The configuration node to add the param-val pair to
* \param param The parameter name
* \param param The parameter name
* \param val The parameter value
* \param val The parameter value
*
*
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论