Граф наследования:so_4::rt::comm::channels_impl::client_connection_t:
Открытые члены | |
client_connection_t (const so_4::rt::comm_channel_t &comm_channel, io_channel_t *phys_channel, unsigned int ibuf_max_size, unsigned int awaiting_obuf_max_size, const threshold_t &in_threshold, const threshold_t &out_threshold) | |
bool | is_readable () |
Есть ли в канале входящие данные. | |
so_4::ret_code_t | read () |
Прочитать данные из канала. | |
virtual so_4::ret_code_t | append_odata (const comm_buf_t &data, bool &is_out_threshold_exceeded)=0 |
отправки. | |
so_4::ret_code_t | write (unsigned int &bytes_sent) |
Осуществить запись ожидающих отправки данных. | |
void | close_because_error () |
Закрыть физический канал из-за обнаруженной ошибки. | |
void | close_normal () |
Закрыть физический канал в нормальном режиме. | |
void | unblock () |
Разблокировать канал. | |
void | set_traffic_transformator (traffic_transformator_t *tranformator) |
Установить указанный трансформатор трафика. | |
Защищенные члены | |
virtual so_4::ret_code_t | parse_ibuf ()=0 |
входного буфера на пакеты. | |
bool | in_package_processed (unsigned int package_size) |
пакет. | |
bool | out_package_processed (unsigned int package_size) |
очередной пакет. | |
Защищенные данные | |
so_4::rt::comm_channel_t | m_comm_channel |
соединению. | |
auto_ptr_3::obj_ptr_t< so_4::rt::comm::io_channel_t > | m_phys_channel_ptr |
данному соединению. | |
unsigned int | m_ibuf_max_size |
прочитанных, но не разобранных данных. | |
comm_buf_t | m_ibuf |
Буфер ожидающих прочитанных данных. | |
unsigned int | m_awaiting_obuf_max_size |
ожидающих отправки данных. | |
comm_buf_t | m_awaiting_obuf |
Буфер ожидающих отправки данных. | |
time_t | m_notwriteable_start |
Время начала периода недоступности для записи. | |
threshold_t | m_in_threshold |
Порог для входного потока. | |
threshold_t | m_in_traffic_bulk |
Текущий объем входного потока. | |
threshold_t | m_out_threshold |
Порог для выходного потока. | |
threshold_t | m_out_traffic_bulk |
после последнего обращения к методу write. | |
auto_ptr_3::obj_ptr_t< traffic_transformator_t > | m_transformator |
Текущий трансформатор трафика. | |
Закрытые члены | |
bool | is_writeable () |
Готов ли клиент для записи? | |
unsigned int | query_read_buf_size () const |
Размер буфера для выполнения одной операции чтения. | |
unsigned int | query_write_buf_size () const |
Размер буфера для выполнения одной операции записи. | |
unsigned int | query_max_notwriteable_time () const |
Максимально допустимое время недоступности для записи. | |
so_4::ret_code_t | process_notwriteable_state () |
Обработка состояния недоступности для записи. | |
so_4::ret_code_t | transform_incoming (const char *what, size_t what_size, size_t &transformed_size) |
Выполнить детрансформацию очередной порции входящих данных. | |
bool | is_outgoing_data_exists () const |
Проверяет наличие готовых исходящих данных. | |
so_4::ret_code_t | make_outgoing_data (const char *&outgoing_data, size_t &outgoing_size) |
Подготовить данные для отсылки. | |
void | clear_outgoing_data (size_t bytes_sent) |
Осуществить очистку тех данных, которые были успешно записаны в физический канал. | |
so_4::ret_code_t | transform_awaiting_obuf () |
Пропускает через текущий трансформатор все содержимое m_awaiting_obuf. | |
Закрытые данные | |
so_4::rt::comm_buf_t | m_outgoing_data |
Буфер преобразованных исходящих данных. |
|
|
|
отправки.
Замещается в so_4::rt::comm::channels_impl::raw_client_connection_t и so_4::rt::comm::channels_impl::sop_client_connection_t. |
|
Осуществить очистку тех данных, которые были успешно записаны в физический канал.
|
|
пакет.
|
|
Проверяет наличие готовых исходящих данных.
|
|
Есть ли в канале входящие данные.
|
|
Готов ли клиент для записи?
|
|
Подготовить данные для отсылки.
|
|
очередной пакет.
|
|
входного буфера на пакеты.
Замещается в so_4::rt::comm::channels_impl::raw_client_connection_t и so_4::rt::comm::channels_impl::sop_client_connection_t. |
|
Обработка состояния недоступности для записи. Вызывается каждый раз, когда метод write() обнаруживает, что канал недоступен для записи. Если обнаруживается, что канал недоступен для записи более query_max_notwriteable_time() секунд, то возвращается значение notwriteable_timeout. |
|
Максимально допустимое время недоступности для записи. В секундах. |
|
Прочитать данные из канала. Если данные прочитаны, то производится попытка их разбора на отдельные пакеты. Каждый отдельный пакет отсылается главному агенту коммуникатору сообщением so_4::rt::comm::msg_sop_package.
|
|
Установить указанный трансформатор трафика.
|
|
Пропускает через текущий трансформатор все содержимое m_awaiting_obuf.
|
|
Выполнить детрансформацию очередной порции входящих данных.
|
|
Разблокировать канал.
|
|
Осуществить запись ожидающих отправки данных. Если в буфере ожидающих отправки данных есть данные, то отсылаются первые N байт из них.
|
|
Порог для входного потока.
|
|
Текущий объем входного потока.
|
|
Время начала периода недоступности для записи. Значение 0 означает, что канал доступен для записи. |
|
Порог для выходного потока.
|
|
после последнего обращения к методу write.
|
|
Буфер преобразованных исходящих данных.
|
|
Текущий трансформатор трафика.
|