diff --git a/src/include/switch_types.h b/src/include/switch_types.h index 416bd3720c..4f99cb6e2e 100644 --- a/src/include/switch_types.h +++ b/src/include/switch_types.h @@ -1013,8 +1013,13 @@ typedef switch_bool_t (*switch_media_bug_callback_t) (switch_media_bug_t *, void typedef void (*switch_application_function_t) (switch_core_session_t *, char *); typedef void (*switch_event_callback_t) (switch_event_t *); typedef switch_caller_extension_t *(*switch_dialplan_hunt_function_t) (switch_core_session_t *, void *, switch_caller_profile_t *); + typedef struct switch_scheduler_task switch_scheduler_task_t; + typedef void (*switch_scheduler_func_t) (switch_scheduler_task_t *task); + +#define SWITCH_STANDARD_SCHED_FUNC(name) static void name (switch_scheduler_task_t *task) + typedef switch_status_t (*switch_state_handler_t) (switch_core_session_t *); typedef struct switch_stream_handle switch_stream_handle_t; typedef switch_status_t (*switch_stream_handle_write_function_t) (switch_stream_handle_t *handle, const char *fmt, ...); diff --git a/src/switch_core.c b/src/switch_core.c index b9f7e714e2..32a6499ecf 100644 --- a/src/switch_core.c +++ b/src/switch_core.c @@ -71,7 +71,7 @@ static void send_heartbeat(void) } } -static void heartbeat_callback(switch_scheduler_task_t *task) +SWITCH_STANDARD_SCHED_FUNC(heartbeat_callback) { send_heartbeat(); diff --git a/src/switch_ivr_async.c b/src/switch_ivr_async.c index 09013dac90..b787e312bf 100644 --- a/src/switch_ivr_async.c +++ b/src/switch_ivr_async.c @@ -615,7 +615,7 @@ struct hangup_helper { switch_call_cause_t cause; }; -static void sch_hangup_callback(switch_scheduler_task_t *task) +SWITCH_STANDARD_SCHED_FUNC(sch_hangup_callback) { struct hangup_helper *helper; switch_core_session_t *session, *other_session; @@ -665,7 +665,7 @@ struct transfer_helper { char *context; }; -static void sch_transfer_callback(switch_scheduler_task_t *task) +SWITCH_STANDARD_SCHED_FUNC(sch_transfer_callback) { struct transfer_helper *helper; switch_core_session_t *session; @@ -732,7 +732,7 @@ struct broadcast_helper { switch_media_flag_t flags; }; -static void sch_broadcast_callback(switch_scheduler_task_t *task) +SWITCH_STANDARD_SCHED_FUNC(sch_broadcast_callback) { struct broadcast_helper *helper; assert(task);