00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef MRCP_CLIENT_H
00020 #define MRCP_CLIENT_H
00021
00022
00023
00024
00025
00026
00027 #include "mrcp_client_types.h"
00028 #include "mpf_rtp_descriptor.h"
00029 #include "apt_task.h"
00030
00031 APT_BEGIN_EXTERN_C
00032
00033
00034 typedef void (*mrcp_client_handler_f)(apt_bool_t status);
00035
00036
00037
00038
00039
00040 MRCP_DECLARE(mrcp_client_t*) mrcp_client_create(apt_dir_layout_t *dir_layout);
00041
00042
00043
00044
00045
00046
00047 MRCP_DECLARE(void) mrcp_client_async_start_set(mrcp_client_t *client, mrcp_client_handler_f handler);
00048
00049
00050
00051
00052
00053
00054
00055 MRCP_DECLARE(apt_bool_t) mrcp_client_start(mrcp_client_t *client);
00056
00057
00058
00059
00060
00061 MRCP_DECLARE(apt_bool_t) mrcp_client_shutdown(mrcp_client_t *client);
00062
00063
00064
00065
00066
00067 MRCP_DECLARE(apt_bool_t) mrcp_client_destroy(mrcp_client_t *client);
00068
00069
00070
00071
00072
00073
00074
00075 MRCP_DECLARE(apt_bool_t) mrcp_client_resource_factory_register(mrcp_client_t *client, mrcp_resource_factory_t *resource_factory);
00076
00077
00078
00079
00080
00081
00082 MRCP_DECLARE(apt_bool_t) mrcp_client_codec_manager_register(mrcp_client_t *client, mpf_codec_manager_t *codec_manager);
00083
00084
00085
00086
00087
00088 MRCP_DECLARE(const mpf_codec_manager_t*) mrcp_client_codec_manager_get(const mrcp_client_t *client);
00089
00090
00091
00092
00093
00094
00095 MRCP_DECLARE(apt_bool_t) mrcp_client_media_engine_register(mrcp_client_t *client, mpf_engine_t *media_engine);
00096
00097
00098
00099
00100
00101
00102
00103 MRCP_DECLARE(apt_bool_t) mrcp_client_rtp_factory_register(mrcp_client_t *client, mpf_termination_factory_t *rtp_termination_factory, const char *name);
00104
00105
00106
00107
00108
00109
00110
00111 MRCP_DECLARE(apt_bool_t) mrcp_client_rtp_settings_register(mrcp_client_t *client, mpf_rtp_settings_t *rtp_settings, const char *name);
00112
00113
00114
00115
00116
00117
00118 MRCP_DECLARE(apt_bool_t) mrcp_client_signaling_agent_register(mrcp_client_t *client, mrcp_sig_agent_t *signaling_agent);
00119
00120
00121
00122
00123
00124
00125
00126 MRCP_DECLARE(apt_bool_t) mrcp_client_signaling_settings_register(mrcp_client_t *client, mrcp_sig_settings_t *signaling_settings, const char *name);
00127
00128
00129
00130
00131
00132
00133 MRCP_DECLARE(apt_bool_t) mrcp_client_connection_agent_register(mrcp_client_t *client, mrcp_connection_agent_t *connection_agent);
00134
00135
00136 MRCP_DECLARE(mrcp_profile_t*) mrcp_client_profile_create(
00137 mrcp_resource_factory_t *resource_factory,
00138 mrcp_sig_agent_t *signaling_agent,
00139 mrcp_connection_agent_t *connection_agent,
00140 mpf_engine_t *media_engine,
00141 mpf_termination_factory_t *rtp_factory,
00142 mpf_rtp_settings_t *rtp_settings,
00143 mrcp_sig_settings_t *signaling_settings,
00144 apr_pool_t *pool);
00145
00146
00147
00148
00149
00150
00151
00152 MRCP_DECLARE(apt_bool_t) mrcp_client_profile_register(mrcp_client_t *client, mrcp_profile_t *profile, const char *name);
00153
00154
00155
00156
00157
00158
00159
00160 MRCP_DECLARE(apt_bool_t) mrcp_client_application_register(mrcp_client_t *client, mrcp_application_t *application, const char *name);
00161
00162
00163
00164
00165
00166 MRCP_DECLARE(apr_pool_t*) mrcp_client_memory_pool_get(const mrcp_client_t *client);
00167
00168
00169
00170
00171
00172
00173 MRCP_DECLARE(mpf_engine_t*) mrcp_client_media_engine_get(const mrcp_client_t *client, const char *name);
00174
00175
00176
00177
00178
00179
00180 MRCP_DECLARE(mpf_termination_factory_t*) mrcp_client_rtp_factory_get(const mrcp_client_t *client, const char *name);
00181
00182
00183
00184
00185
00186
00187 MRCP_DECLARE(mpf_rtp_settings_t*) mrcp_client_rtp_settings_get(const mrcp_client_t *client, const char *name);
00188
00189
00190
00191
00192
00193
00194 MRCP_DECLARE(mrcp_sig_agent_t*) mrcp_client_signaling_agent_get(const mrcp_client_t *client, const char *name);
00195
00196
00197
00198
00199
00200
00201 MRCP_DECLARE(mrcp_sig_settings_t*) mrcp_client_signaling_settings_get(const mrcp_client_t *client, const char *name);
00202
00203
00204
00205
00206
00207
00208 MRCP_DECLARE(mrcp_connection_agent_t*) mrcp_client_connection_agent_get(const mrcp_client_t *client, const char *name);
00209
00210
00211
00212
00213
00214
00215 MRCP_DECLARE(mrcp_profile_t*) mrcp_client_profile_get(const mrcp_client_t *client, const char *name);
00216
00217
00218
00219
00220
00221 MRCP_DECLARE(apt_dir_layout_t*) mrcp_client_dir_layout_get(const mrcp_client_t *client);
00222
00223 APT_END_EXTERN_C
00224
00225 #endif