17#ifndef h2_bucket_beam_h
18#define h2_bucket_beam_h
98 int id,
const char *
tag,
apr_brigade_flush void * ctx
const char int apr_pool_t * pool
const apr_array_header_t * list
apr_vformatter_buff_t * c
const void apr_size_t bytes
apr_int64_t apr_interval_time_t
void h2_beam_ev_callback(void *ctx, h2_bucket_beam *beam)
apr_status_t h2_beam_create(h2_bucket_beam **pbeam, conn_rec *from, apr_pool_t *pool, int id, const char *tag, apr_size_t buffer_size, apr_interval_time_t timeout)
void h2_beam_abort(h2_bucket_beam *beam, conn_rec *c)
apr_size_t h2_beam_buffer_size_get(h2_bucket_beam *beam)
void h2_beam_on_received(h2_bucket_beam *beam, h2_beam_ev_callback *recv_cb, void *ctx)
apr_interval_time_t h2_beam_timeout_get(h2_bucket_beam *beam)
void h2_beam_on_eagain(h2_bucket_beam *beam, h2_beam_ev_callback *eagain_cb, void *ctx)
apr_status_t h2_beam_destroy(h2_bucket_beam *beam, conn_rec *c)
void h2_beam_on_send(h2_bucket_beam *beam, h2_beam_ev_callback *on_send_cb, void *ctx)
void h2_beam_on_was_empty(h2_bucket_beam *beam, h2_beam_ev_callback *was_empty_cb, void *ctx)
int h2_beam_empty(h2_bucket_beam *beam)
void h2_beam_timeout_set(h2_bucket_beam *beam, apr_interval_time_t timeout)
void h2_beam_close(h2_bucket_beam *beam, conn_rec *c)
apr_off_t h2_beam_get_mem_used(h2_bucket_beam *beam)
int h2_beam_is_complete(h2_bucket_beam *beam)
apr_status_t h2_beam_send(h2_bucket_beam *beam, conn_rec *from, apr_bucket_brigade *bb, apr_read_type_e block, apr_off_t *pwritten)
void h2_beam_set_copy_files(h2_bucket_beam *beam, int enabled)
int h2_beam_report_consumption(h2_bucket_beam *beam)
void h2_beam_on_consumed(h2_bucket_beam *beam, h2_beam_io_callback *io_cb, void *ctx)
void h2_beam_io_callback(void *ctx, h2_bucket_beam *beam, apr_off_t bytes)
apr_off_t h2_beam_get_buffered(h2_bucket_beam *beam)
void h2_beam_buffer_size_set(h2_bucket_beam *beam, apr_size_t buffer_size)
apr_status_t h2_beam_receive(h2_bucket_beam *beam, conn_rec *to, apr_bucket_brigade *bb, apr_read_type_e block, apr_off_t readbytes)
Structure to store things which are per connection.
APR_RING_HEAD(h2_bucket_list, apr_bucket) list
h2_blist buckets_consumed
struct apr_thread_cond_t * change
h2_beam_ev_callback * eagain_cb
h2_beam_ev_callback * recv_cb
apr_off_t recv_bytes_reported
h2_beam_ev_callback * send_cb
apr_interval_time_t timeout
h2_beam_io_callback * cons_io_cb
struct apr_thread_mutex_t * lock
h2_beam_ev_callback * was_empty_cb