alc_session Struct Reference

#include <alc_session.h>

Collaboration diagram for alc_session:

Collaboration graph
[legend]

Data Fields

int s_id
int mode
unsigned long long tsi
unsigned long long starttime
unsigned long long stoptime
double ftimestarttime
alc_channelch_list [MAX_CHANNELS_IN_SESSION]
int nb_channel
int max_channel
int nb_sending_channel
int nb_ready_channel
enum alc_session_states state
int addr_family
int addr_type
int fdt_instance_id
mad_rlcrlc
int def_ttl
int def_tx_rate
unsigned short def_eslen
unsigned int def_mxnbes
unsigned int def_max_sblen
BOOL simul_losses
double loss_ratio1
double loss_ratio2
int def_fec_ratio
unsigned char def_fec_enc_id
unsigned short def_fec_inst_id
int cc_id
int use_fec_oti_ext_hdr
int rx_memory_mode
int verbosity
unsigned long long sent_bytes
unsigned long long obj_sent_bytes
unsigned long long obj_start_time
unsigned long long tx_toi
double last_print_tx_percent
int a_flag
tx_queue_ttx_queue_begin
tx_queue_ttx_queue_end
unsigned int tx_queue_size
BOOL first_unit_in_loop
int encode_content
BOOL half_word
BOOL optimize_tx_rate
BOOL calculate_session_size
BOOL ssm
char base_dir [MAX_PATH_LENGTH]
char src_addr [40]
unsigned int rx_objs
trans_objobj_list
trans_objfdt_list
wanted_obj_twanted_obj_list
rx_fdt_instance_trx_fdt_instance_list
HANDLE handle_rx_thread
unsigned int rx_thread_id
HANDLE handle_tx_thread
unsigned int tx_thread_id
unsigned int lost_packets
int accept_expired_fdt_inst
trans_unit_containerunit_pool
trans_unit_containerlast_given
BOOL waiting_fdt_instance

Detailed Description

Structure for the ALC session.

Definition at line 119 of file alc_session.h.


Field Documentation

int alc_session::s_id

ALC session identifier

Definition at line 120 of file alc_session.h.

Referenced by analyze_packet(), mad_rlc_process_rx_sp(), open_alc_session(), and send_unit().

int alc_session::mode

mode for the ALC session (sender or receiver)

Definition at line 121 of file alc_session.h.

Referenced by close_alc_channel(), close_alc_socket(), close_mad_rlc(), init_alc_socket(), init_mad_rlc(), open_alc_channel(), and open_alc_session().

unsigned long long alc_session::tsi

transport session identifier

Definition at line 123 of file alc_session.h.

Referenced by analyze_packet(), open_alc_session(), send_session_close_packet(), and send_unit().

unsigned long long alc_session::starttime

start time of the session

Definition at line 124 of file alc_session.h.

Referenced by open_alc_session().

unsigned long long alc_session::stoptime

stop time of the session

Definition at line 125 of file alc_session.h.

Referenced by open_alc_session().

double alc_session::ftimestarttime

Definition at line 126 of file alc_session.h.

Referenced by open_alc_session(), and session_kbit_rate().

struct alc_channel* alc_session::ch_list[MAX_CHANNELS_IN_SESSION]

channels in the session

Definition at line 128 of file alc_session.h.

Referenced by add_pkt_to_tx_queue(), alc_send(), close_alc_channel(), close_alc_session(), mad_rlc_add_lost(), mad_rlc_fill_header(), mad_rlc_process_rx_sp(), open_alc_channel(), recv_packet(), remove_alc_channels(), send_session_close_packet(), tx_thread(), and update_session_tx_rate().

int alc_session::nb_channel

number of channels in the session

Definition at line 129 of file alc_session.h.

Referenced by add_alc_channel(), add_pkt_to_tx_queue(), analyze_packet(), close_alc_channel(), mad_rlc_add_late(), mad_rlc_add_lost(), mad_rlc_analyze_cci(), mad_rlc_fill_header(), mad_rlc_process_rx_sp(), mad_rlc_remove_late(), mad_rlc_update_late_list(), open_alc_channel(), open_alc_session(), print_sender_info(), recv_packet(), rx_thread(), and tx_thread().

int alc_session::max_channel

number of maximum channels in the session

Definition at line 130 of file alc_session.h.

Referenced by add_alc_channel(), close_alc_session(), open_alc_session(), remove_alc_channels(), and update_session_tx_rate().

int alc_session::nb_sending_channel

number of sending channels

Definition at line 132 of file alc_session.h.

Referenced by mad_rlc_fill_header(), open_alc_channel(), and open_alc_session().

int alc_session::nb_ready_channel

number of ready channels

Definition at line 133 of file alc_session.h.

Referenced by open_alc_session().

enum alc_session_states alc_session::state

state of the session

Definition at line 135 of file alc_session.h.

Referenced by alc_recv(), alc_recv2(), alc_recv3(), alc_send(), analyze_packet(), close_alc_session(), fdt_recv(), get_session_state(), open_alc_session(), rx_socket_thread(), rx_thread(), send_unit(), sender_in_fdt_based_mode(), set_session_state(), and tx_thread().

int alc_session::addr_family

address family

Definition at line 137 of file alc_session.h.

Referenced by alc_send(), calculate_packet_length(), close_alc_socket(), init_alc_socket(), mad_rlc_process_rx_sp(), open_alc_session(), rx_socket_thread(), send_session_close_packet(), and send_unit().

int alc_session::addr_type

address type, multicast (0) or unicast (1)

Definition at line 138 of file alc_session.h.

Referenced by close_alc_socket(), init_alc_socket(), mad_rlc_process_rx_sp(), and open_alc_session().

int alc_session::fdt_instance_id

current FDT instance

Definition at line 140 of file alc_session.h.

Referenced by get_fdt_instance_id(), open_alc_session(), send_unit(), and set_fdt_instance_id().

struct mad_rlc* alc_session::rlc

RLC congestion control

Definition at line 142 of file alc_session.h.

Referenced by close_mad_rlc(), init_mad_rlc(), mad_rlc_add_late(), mad_rlc_add_lost(), mad_rlc_analyze_cci(), mad_rlc_check_sequence(), mad_rlc_fill_header(), mad_rlc_free_lists(), mad_rlc_next_sp(), mad_rlc_process_rx_sp(), mad_rlc_remove_late(), mad_rlc_reset_tx_sp(), mad_rlc_update_late_list(), and mad_rlc_update_loss_list().

int alc_session::def_ttl

time to live

Definition at line 144 of file alc_session.h.

Referenced by init_alc_socket(), and open_alc_session().

int alc_session::def_tx_rate

transmission rate in kbit/s

Definition at line 145 of file alc_session.h.

Referenced by add_alc_channel(), open_alc_session(), session_kbit_rate(), and tx_thread().

unsigned short alc_session::def_eslen

encoding symbol length

Definition at line 146 of file alc_session.h.

Referenced by calculate_packet_length(), encode_directory(), encode_file(), open_alc_session(), and send_file().

unsigned int alc_session::def_mxnbes

maximum number of encoding symbols that can be generated from one source block

Definition at line 147 of file alc_session.h.

unsigned int alc_session::def_max_sblen

maximum source block length

Definition at line 149 of file alc_session.h.

Referenced by encode_directory(), encode_file(), open_alc_session(), and send_file().

BOOL alc_session::simul_losses

simulate packet losses, TRUE = yes, FALSE = no

Definition at line 150 of file alc_session.h.

Referenced by open_alc_session().

double alc_session::loss_ratio1

packet loss ratio one

Definition at line 151 of file alc_session.h.

Referenced by open_alc_session().

double alc_session::loss_ratio2

packet loss ratio two

Definition at line 152 of file alc_session.h.

Referenced by open_alc_session().

int alc_session::def_fec_ratio

FEC ratio percent

Definition at line 153 of file alc_session.h.

Referenced by alc_send(), encode_directory(), encode_file(), and open_alc_session().

unsigned char alc_session::def_fec_enc_id

FEC encoding id

Definition at line 155 of file alc_session.h.

Referenced by calculate_packet_length(), encode_directory(), encode_file(), open_alc_session(), send_file(), and send_session_close_packet().

unsigned short alc_session::def_fec_inst_id

FEC instance id

Definition at line 156 of file alc_session.h.

Referenced by encode_directory(), encode_file(), open_alc_session(), and send_file().

int alc_session::cc_id

used congestion control, 0 = NULL, 1 = RLC

Definition at line 157 of file alc_session.h.

Referenced by add_pkt_to_tx_queue(), analyze_packet(), open_alc_channel(), open_alc_session(), print_sender_info(), send_session_close_packet(), and tx_thread().

int alc_session::use_fec_oti_ext_hdr

use FEC OTI extension header

Definition at line 158 of file alc_session.h.

Referenced by alc_send(), calculate_packet_length(), create_fdt_instance(), encode_directory(), encode_file(), open_alc_session(), and send_unit().

int alc_session::rx_memory_mode

used memory mode in the receiver

Definition at line 160 of file alc_session.h.

Referenced by analyze_packet(), open_alc_session(), and parse_data().

int alc_session::verbosity

verbosity level

Definition at line 161 of file alc_session.h.

Referenced by analyze_packet(), open_alc_session(), and rx_socket_thread().

unsigned long long alc_session::sent_bytes

bytes sent in the session

Definition at line 163 of file alc_session.h.

Referenced by add_session_sent_bytes(), get_session_sent_bytes(), open_alc_session(), session_kbit_rate(), and set_session_sent_bytes().

unsigned long long alc_session::obj_sent_bytes

bytes sent for object

Definition at line 164 of file alc_session.h.

Referenced by add_object_sent_bytes(), get_object_sent_bytes(), open_alc_session(), and set_object_sent_bytes().

unsigned long long alc_session::obj_start_time

start time for the transport object which sender is currently sending

Definition at line 165 of file alc_session.h.

unsigned long long alc_session::tx_toi

transport object which sender is currently sending

Definition at line 166 of file alc_session.h.

Referenced by get_session_tx_toi(), and set_session_tx_toi().

double alc_session::last_print_tx_percent

last printed transmission percent

Definition at line 168 of file alc_session.h.

Referenced by get_object_last_print_tx_percent(), open_alc_session(), and set_object_last_print_tx_percent().

int alc_session::a_flag

send A flag in the session

Definition at line 170 of file alc_session.h.

Referenced by get_session_a_flag_usage(), open_alc_session(), and set_session_a_flag_usage().

tx_queue_t* alc_session::tx_queue_begin

first item in transmission queue

Definition at line 172 of file alc_session.h.

Referenced by add_pkt_to_tx_queue(), open_alc_session(), sender_in_fdt_based_mode(), and tx_thread().

tx_queue_t* alc_session::tx_queue_end

last item in transmission queue

Definition at line 173 of file alc_session.h.

Referenced by add_pkt_to_tx_queue(), and open_alc_session().

unsigned int alc_session::tx_queue_size

size of transmission queue

Definition at line 174 of file alc_session.h.

Referenced by add_pkt_to_tx_queue(), and open_alc_session().

BOOL alc_session::first_unit_in_loop

first unit in the session sent to be sent?

Definition at line 176 of file alc_session.h.

Referenced by open_alc_session().

int alc_session::encode_content

encode content, 0 = no, 1 = ZLIB FDT, 2 = ZLIB FDT and GZIP files, 3 = PAD files

Definition at line 177 of file alc_session.h.

Referenced by encode_directory(), encode_file(), open_alc_session(), and send_unit().

BOOL alc_session::half_word

use half word flag

Definition at line 178 of file alc_session.h.

Referenced by open_alc_session(), and send_unit().

BOOL alc_session::optimize_tx_rate

optimize transmission rate (use more CPU)

Definition at line 179 of file alc_session.h.

Referenced by open_alc_session(), and tx_thread().

BOOL alc_session::calculate_session_size

TRUE if the transmission is simulated and the sent_bytes is calculated

Definition at line 180 of file alc_session.h.

Referenced by encode_directory(), encode_file(), open_alc_session(), send_unit(), and tx_thread().

BOOL alc_session::ssm

use source specific multicast

Definition at line 183 of file alc_session.h.

Referenced by close_alc_socket(), init_alc_socket(), and open_alc_session().

char alc_session::base_dir[MAX_PATH_LENGTH]

Base directory for downloaded/sent files

Definition at line 186 of file alc_session.h.

Referenced by analyze_packet(), get_session_basedir(), and open_alc_session().

char alc_session::src_addr[40]

source address for the session in the receiver

Definition at line 187 of file alc_session.h.

Referenced by init_alc_socket(), open_alc_session(), and rx_socket_thread().

unsigned int alc_session::rx_objs

number of objects received in this session

Definition at line 189 of file alc_session.h.

struct trans_obj* alc_session::obj_list

pointer to first object

Definition at line 190 of file alc_session.h.

Referenced by alc_recv(), alc_recv2(), alc_recv3(), flute_file_repair(), get_session_obj_list(), insert_object(), name_incomplete_objects(), object_exist(), and open_alc_session().

struct trans_obj* alc_session::fdt_list

pointer to first FDT instance

Definition at line 191 of file alc_session.h.

Referenced by fdt_recv(), flute_file_repair(), get_session_fdt_list(), insert_object(), object_exist(), and open_alc_session().

wanted_obj_t* alc_session::wanted_obj_list

pointer to first wanted object

Definition at line 192 of file alc_session.h.

Referenced by flute_file_repair(), get_session_wanted_obj_list(), get_wanted_object(), open_alc_session(), remove_wanted_object(), and set_wanted_object().

rx_fdt_instance_t* alc_session::rx_fdt_instance_list

pointer to first FDT instance information structure

Definition at line 193 of file alc_session.h.

Referenced by analyze_packet(), is_received_instance(), open_alc_session(), and set_received_instance().

HANDLE alc_session::handle_rx_thread

handle to thread which receives packets from the session

Definition at line 196 of file alc_session.h.

Referenced by close_alc_session(), flute_receiver_report(), and open_alc_session().

unsigned int alc_session::rx_thread_id

identifier for thread which receives packets from the session

Definition at line 197 of file alc_session.h.

Referenced by close_alc_session(), flute_receiver_report(), and open_alc_session().

HANDLE alc_session::handle_tx_thread

handle to thread which sents packets to the session

Definition at line 198 of file alc_session.h.

Referenced by flute_sender(), and open_alc_session().

unsigned int alc_session::tx_thread_id

identifier for thread which sents packets to the session

Definition at line 199 of file alc_session.h.

Referenced by flute_sender(), and open_alc_session().

unsigned int alc_session::lost_packets

how many packets is lost

Definition at line 205 of file alc_session.h.

Referenced by mad_rlc_add_late(), and mad_rlc_remove_late().

int alc_session::accept_expired_fdt_inst

accept expired FDT instances

Definition at line 206 of file alc_session.h.

Referenced by open_alc_session().

struct trans_unit_container* alc_session::unit_pool

list of preallocated units

Definition at line 209 of file alc_session.h.

Referenced by retrieve_unit().

struct trans_unit_container* alc_session::last_given

last unit returned

Definition at line 210 of file alc_session.h.

Referenced by retrieve_unit().

BOOL alc_session::waiting_fdt_instance

FDT instance is in parsing state

Definition at line 213 of file alc_session.h.

Referenced by analyze_packet(), and set_fdt_instance_parsed().


The documentation for this struct was generated from the following file:
Generated on Fri Mar 9 20:09:00 2007 for MAD-FCL by  doxygen 1.5.0