FreeSWITCH API Documentation
1.7.0
|
Module Interface Definitions. More...
Go to the source code of this file.
Data Structures | |
struct | switch_state_handler_table |
struct | switch_stream_handle |
struct | switch_io_routines |
A table of i/o routines that an endpoint interface can implement. More... | |
struct | switch_endpoint_interface |
Abstraction of an module endpoint interface This is the glue between the abstract idea of a "channel" and what is really going on under the hood. Each endpoint module fills out one of these tables and makes it available when a channel is created of it's paticular type. More... | |
struct | switch_timer |
Abstract handler to a timer module. More... | |
struct | switch_timer_interface |
A table of functions that a timer module implements. More... | |
struct | switch_dialplan_interface |
Abstract interface to a dialplan module. More... | |
struct | switch_file_interface |
Abstract interface to a file format module. More... | |
struct | switch_mm_s |
struct | switch_file_handle |
struct | switch_asr_interface |
Abstract interface to an asr module. More... | |
struct | switch_asr_handle |
struct | switch_speech_interface |
Abstract interface to a speech module. More... | |
struct | switch_speech_handle |
struct | switch_say_interface |
Abstract interface to a say module. More... | |
struct | switch_chat_interface |
Abstract interface to a chat module. More... | |
struct | switch_management_interface |
Abstract interface to a management module. More... | |
struct | switch_limit_interface |
Abstract interface to a limit module. More... | |
struct | switch_directory_interface |
Abstract interface to a directory module. More... | |
struct | switch_directory_handle |
struct | switch_audio_codec_settings |
struct | switch_video_codec_settings |
union | switch_codec_settings |
struct | switch_codec_fmtp |
struct | switch_picture |
struct | switch_codec |
struct | switch_codec_implementation |
A table of settings and callbacks that define a paticular implementation of a codec. More... | |
struct | switch_codec_interface |
Top level module interface to implement a series of codec implementations. More... | |
struct | switch_application_interface |
A module interface to implement an application. More... | |
struct | switch_chat_application_interface |
A module interface to implement a chat application. More... | |
struct | switch_api_interface |
A module interface to implement an api function. More... | |
struct | switch_json_api_interface |
A module interface to implement a json api function. More... | |
struct | switch_slin_data |
Macros | |
#define | PROTECT_INTERFACE(_it) if (_it) {switch_mutex_lock(_it->reflock); switch_thread_rwlock_rdlock(_it->parent->rwlock); switch_thread_rwlock_rdlock(_it->rwlock); _it->refs++; _it->parent->refs++; switch_mutex_unlock(_it->reflock);} |
#define | UNPROTECT_INTERFACE(_it) if (_it) {switch_mutex_lock(_it->reflock); switch_thread_rwlock_unlock(_it->rwlock); switch_thread_rwlock_unlock(_it->parent->rwlock); _it->refs--; _it->parent->refs--; switch_mutex_unlock(_it->reflock);} |
Module Interface Definitions.
This module holds the definition of data abstractions used to implement various pluggable interfaces and pluggable event handlers.
Definition in file switch_module_interfaces.h.
#define PROTECT_INTERFACE | ( | _it | ) | if (_it) {switch_mutex_lock(_it->reflock); switch_thread_rwlock_rdlock(_it->parent->rwlock); switch_thread_rwlock_rdlock(_it->rwlock); _it->refs++; _it->parent->refs++; switch_mutex_unlock(_it->reflock);} |
Definition at line 836 of file switch_module_interfaces.h.
Referenced by switch_core_session_request_uuid(), switch_loadable_module_get_codec_interface(), switch_loadable_module_get_endpoint_interface(), and switch_loadable_module_get_file_interface().
#define UNPROTECT_INTERFACE | ( | _it | ) | if (_it) {switch_mutex_lock(_it->reflock); switch_thread_rwlock_unlock(_it->rwlock); switch_thread_rwlock_unlock(_it->parent->rwlock); _it->refs--; _it->parent->refs--; switch_mutex_unlock(_it->reflock);} |
Definition at line 837 of file switch_module_interfaces.h.
Referenced by collect_thread_run(), do_chat_send(), recover_callback(), release_backend(), switch_api_execute(), switch_core_asr_close(), switch_core_asr_open(), switch_core_codec_destroy(), switch_core_codec_init_with_bitrate(), switch_core_codec_parse_fmtp(), switch_core_directory_close(), switch_core_directory_open(), switch_core_execute_chat_app(), switch_core_file_close(), switch_core_perform_file_open(), switch_core_session_execute_application_get_flags(), switch_core_session_execute_exten(), switch_core_session_get_app_flags(), switch_core_session_outgoing_channel(), switch_core_session_perform_destroy(), switch_core_session_request_by_name(), switch_core_session_request_uuid(), switch_core_speech_close(), switch_core_speech_open(), switch_core_standard_on_routing(), switch_core_timer_destroy(), switch_core_timer_init(), switch_ivr_menu_execute(), switch_ivr_phrase_macro_event(), switch_json_api_execute(), and switch_loadable_module_get_codecs_sorted().
typedef switch_jb_t*(* switch_io_get_jb_t)(switch_core_session_t *, switch_media_type_t) |
Definition at line 122 of file switch_module_interfaces.h.
typedef switch_status_t(* switch_io_kill_channel_t)(switch_core_session_t *, int) |
Definition at line 114 of file switch_module_interfaces.h.
typedef switch_call_cause_t(* switch_io_outgoing_channel_t)(switch_core_session_t *, switch_event_t *, switch_caller_profile_t *, switch_core_session_t **, switch_memory_pool_t **, switch_originate_flag_t, switch_call_cause_t *) |
Definition at line 110 of file switch_module_interfaces.h.
typedef switch_status_t(* switch_io_read_frame_t)(switch_core_session_t *, switch_frame_t **, switch_io_flag_t, int) |
Definition at line 112 of file switch_module_interfaces.h.
typedef switch_status_t(* switch_io_read_video_frame_t)(switch_core_session_t *, switch_frame_t **, switch_io_flag_t, int) |
Definition at line 120 of file switch_module_interfaces.h.
typedef switch_status_t(* switch_io_receive_event_t)(switch_core_session_t *, switch_event_t *) |
Definition at line 117 of file switch_module_interfaces.h.
typedef switch_status_t(* switch_io_receive_message_t)(switch_core_session_t *, switch_core_session_message_t *) |
Definition at line 116 of file switch_module_interfaces.h.
typedef switch_status_t(* switch_io_send_dtmf_t)(switch_core_session_t *, const switch_dtmf_t *) |
Definition at line 115 of file switch_module_interfaces.h.
typedef switch_status_t(* switch_io_state_change_t)(switch_core_session_t *) |
Definition at line 118 of file switch_module_interfaces.h.
typedef switch_status_t(* switch_io_state_run_t)(switch_core_session_t *) |
Definition at line 119 of file switch_module_interfaces.h.
typedef switch_status_t(* switch_io_write_frame_t)(switch_core_session_t *, switch_frame_t *, switch_io_flag_t, int) |
Definition at line 113 of file switch_module_interfaces.h.
typedef switch_status_t(* switch_io_write_video_frame_t)(switch_core_session_t *, switch_frame_t *, switch_io_flag_t, int) |
Definition at line 121 of file switch_module_interfaces.h.
typedef struct switch_mm_s switch_mm_t |
Definition at line 124 of file switch_module_interfaces.h.
A table of functions to execute at various states.
Definition at line 49 of file switch_module_interfaces.h.
Enumerator | |
---|---|
SWITCH_TIMER_FUNC_TIMER_INIT | |
SWITCH_TIMER_FUNC_TIMER_NEXT | |
SWITCH_TIMER_FUNC_TIMER_STEP | |
SWITCH_TIMER_FUNC_TIMER_SYNC | |
SWITCH_TIMER_FUNC_TIMER_CHECK | |
SWITCH_TIMER_FUNC_TIMER_DESTROY |
Definition at line 223 of file switch_module_interfaces.h.
Enumerator | |
---|---|
SWITCH_VIDEO_ENCODE_SPEED_DEFAULT | |
SWITCH_VIDEO_ENCODE_SPEED_FAST | |
SWITCH_VIDEO_ENCODE_SPEED_MEDIUM | |
SWITCH_VIDEO_ENCODE_SPEED_SLOW |
Definition at line 303 of file switch_module_interfaces.h.
Enumerator | |
---|---|
SWITCH_VIDEO_PROFILE_BASELINE | |
SWITCH_VIDEO_PROFILE_MAIN | |
SWITCH_VIDEO_PROFILE_HIGH |
Definition at line 310 of file switch_module_interfaces.h.