139 #ifndef _AST_FRAMEHOOK_H_
140 #define _AST_FRAMEHOOK_H_
184 typedef struct ast_frame *(*ast_framehook_event_callback)(
202 #define AST_FRAMEHOOK_INTERFACE_VERSION 1
ast_framehook_event_callback event_cb
Main Channel structure associated with a channel.
int ast_framehook_list_is_empty(struct ast_framehook_list *framehooks)
Determine if an framehook list is empty or not.
ast_framehook_event
These are the types of events that the framehook's event callback can receive.
int ast_framehook_detach(struct ast_channel *chan, int framehook_id)
Detach an framehook from a channel.
ast_framehook_destroy_callback destroy_cb
int ast_framehook_list_destroy(struct ast_channel *chan)
This is used by the channel API to detach and destroy all framehooks on a channel during channel dest...
int ast_framehook_attach(struct ast_channel *chan, struct ast_framehook_interface *i)
Attach an framehook onto a channel for frame interception.
Asterisk internal frame definitions.
A set of macros to manage forward-linked lists.
struct ast_frame *(* ast_framehook_event_callback)(struct ast_channel *chan, struct ast_frame *frame, enum ast_framehook_event event, void *data)
This callback is called every time an event occurs on the framehook.
struct ast_frame * ast_framehook_list_write_event(struct ast_framehook_list *framehooks, struct ast_frame *frame)
This is used by the channel API push a frame write event to a channel's framehook list...
void(* ast_framehook_destroy_callback)(void *data)
This callback is called immediately before the framehook is destroyed.
Data structure associated with a single frame of data.
union ast_frame::@172 data
struct ast_frame * ast_framehook_list_read_event(struct ast_framehook_list *framehooks, struct ast_frame *frame)
This is used by the channel API push a frame read event to a channel's framehook list.