defines.h File Reference

Definitions. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define RECEIVER_SOCKET_BUFFER_SIZE   2000000
#define MAD_FCL_RELEASE_VERSION   "1.7"
#define MAD_FCL_RELEASE_DATE   "March 2, 2007"
#define timeb   _timeb
#define ftime   _ftime
#define SSM
#define USE_ZLIB
#define USE_RETRIEVE_UNIT
#define _BIT_FIELDS_LTOH
#define FDT_TOI   0
#define EXT_FDT   192
#define EXT_CENC   193
#define ALC_VERSION   1
#define FLUTE_VERSION   1
#define COM_NO_C_FEC_ENC_ID   0
#define SIMPLE_XOR_FEC_ENC_ID   2
#define RS_FEC_ENC_ID   3
#define SB_LB_E_FEC_ENC_ID   128
#define SB_SYS_FEC_ENC_ID   129
#define COM_FEC_ENC_ID   130
#define REED_SOL_FEC_INST_ID   0
#define Null   0
#define RLC   1
#define RLC_SP_CYCLE   250
#define RLC_WAIT_AFTER_SP   2
#define RLC_DEAF_PERIOD   10000
#define RLC_LATE_ACCEPTED   0
#define RLC_LOSS_ACCEPTED   0
#define RLC_PKT_TIMEOUT   500
#define RLC_LOSS_LIMIT   1
#define RLC_LOSS_TIMEOUT   20
#define RLC_MAX_LATES   100
#define EXT_NOP   0
#define EXT_AUTH   1
#define EXT_TIME   2
#define EXT_FTI   64
#define SENDER   0
#define RECEIVER   1
#define MAX_ALC_SESSIONS   100
#define MAX_CHANNELS_IN_SESSION   10
#define MAX_PACKET_LENGTH   1500
#define MAX_PATH_LENGTH   1024
#define MAX_PORT_LENGTH   10
#define MAX_TX_QUEUE_SIZE   1000
#define WAITING_FDT   5
#define OK   4
#define EMPTY_PACKET   3
#define HDR_ERROR   2
#define MEM_ERROR   1
#define DUP_PACKET   0
#define NO_TX_THREAD   0
#define TX_THREAD   1
#define ZLIB   1
#define DEFLATE   2
#define GZIP   3
#define PAD   4
#define ZLIB_BUFLEN   16384
#define GZ_SUFFIX   "~gz"
#define GZ_SUFFIX_LEN   (sizeof(GZ_SUFFIX)-1)
#define ZLIB_FDT   1
#define ZLIB_FDT_AND_GZIP_FILES   2
#define PAD_FILES   3
#define PAD_SUFFIX   "~pad"
#define PAD_SUFFIX_LEN   (sizeof(PAD_SUFFIX)-1)


Detailed Description

Definitions.

Author
peltotal
Date
2007/02/26 13:48:19
Revision
1.171

MAD-ALCLIB: Implementation of ALC/LCT protocols, Compact No-Code FEC, Simple XOR FEC, Reed-Solomon FEC, and RLC Congestion Control protocol. Copyright (c) 2003-2007 TUT - Tampere University of Technology main authors/contacts: jani.peltotalo@tut.fi and sami.peltotalo@tut.fi

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

In addition, as a special exception, TUT - Tampere University of Technology gives permission to link the code of this program with the OpenSSL library (or with modified versions of OpenSSL that use the same license as OpenSSL), and distribute linked combinations including the two. You must obey the GNU General Public License in all respects for all of the code used other than OpenSSL. If you modify this file, you may extend this exception to your version of the file, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.

Definition in file defines.h.


Define Documentation

#define _BIT_FIELDS_LTOH

Bit field order is compiler/OS dependant

Definition at line 65 of file defines.h.

#define ALC_VERSION   1

ALC version number

Definition at line 76 of file defines.h.

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

#define COM_FEC_ENC_ID   130

Compact FEC scheme

Definition at line 85 of file defines.h.

Referenced by alc_send(), analyze_packet(), calculate_packet_length(), is_enough_source_block_numbers(), parse_args(), and send_unit().

#define COM_NO_C_FEC_ENC_ID   0

Compact No-Code FEC scheme

Definition at line 79 of file defines.h.

Referenced by alc_recv(), alc_recv2(), alc_send(), analyze_packet(), calculate_packet_length(), fdt_recv(), is_enough_source_block_numbers(), main(), parse_args(), parse_data(), parse_sdp_file(), and send_unit().

#define DEFLATE   2

DEFLATE content encoding

Definition at line 134 of file defines.h.

#define DUP_PACKET   0

Duplicate packet received

Definition at line 127 of file defines.h.

Referenced by analyze_packet().

#define EMPTY_PACKET   3

Empty packet received

Definition at line 124 of file defines.h.

Referenced by analyze_packet().

#define EXT_AUTH   1

Authentication extension header defined by LCT

Definition at line 108 of file defines.h.

Referenced by analyze_packet().

#define EXT_CENC   193

Extension header for FDT content encoding defined by FLUTE

Definition at line 74 of file defines.h.

Referenced by add_cenc_lct_he(), and analyze_packet().

#define EXT_FDT   192

Extension header for FDT defined by FLUTE

Definition at line 73 of file defines.h.

Referenced by add_fdt_lct_he(), and analyze_packet().

#define EXT_FTI   64

FEC object transmission information extension header defined by ALC

Definition at line 110 of file defines.h.

Referenced by add_fti_0_2_128_130_lct_he(), add_fti_129_lct_he(), add_fti_3_lct_he(), and analyze_packet().

#define EXT_NOP   0

No-operation extension header defined by LCT

Definition at line 107 of file defines.h.

Referenced by analyze_packet().

#define EXT_TIME   2

Time extension header defined by LCT

Definition at line 109 of file defines.h.

Referenced by analyze_packet().

#define FDT_TOI   0

TOI for FDT

Definition at line 72 of file defines.h.

Referenced by alc_send(), analyze_packet(), parse_args(), recvfile(), send_fdt_instance(), and send_unit().

#define FLUTE_VERSION   1

FLUTE version number

Definition at line 77 of file defines.h.

Referenced by add_fdt_lct_he(), and analyze_packet().

#define ftime   _ftime

Definition at line 52 of file defines.h.

Referenced by open_alc_session(), and session_kbit_rate().

#define GZ_SUFFIX   "~gz"

Used GZIP suffix

Definition at line 140 of file defines.h.

Referenced by analyze_packet(), encode_directory(), encode_file(), fdtbasedrecv(), fdtbasedsend(), file_gzip_compress(), http_file_repair(), main(), recvfile(), remove_gz_files(), and repair_sender_in_fdt_based_mode().

#define GZ_SUFFIX_LEN   (sizeof(GZ_SUFFIX)-1)

Length of used GZIP suffix

Definition at line 141 of file defines.h.

Referenced by fdtbasedrecv(), file_gzip_uncompress(), and recvfile().

#define GZIP   3

GZIP content encoding

Definition at line 135 of file defines.h.

Referenced by analyze_packet(), fdt_thread(), fdtbasedrecv(), and receiver_in_ui_mode().

#define HDR_ERROR   2

Error in FLUTE header

Definition at line 125 of file defines.h.

Referenced by analyze_packet().

#define MAD_FCL_RELEASE_DATE   "March 2, 2007"

Release date

Definition at line 48 of file defines.h.

Referenced by usage().

#define MAD_FCL_RELEASE_VERSION   "1.7"

Release version

Definition at line 47 of file defines.h.

Referenced by usage().

#define MAX_ALC_SESSIONS   100

Maximum number of ALC sessions

Definition at line 115 of file defines.h.

Referenced by get_alc_session(), open_alc_session(), and set_all_sessions_state().

#define MAX_CHANNELS_IN_SESSION   10

Maximum number of channels per session

Definition at line 116 of file defines.h.

Referenced by flute_file_repair(), flute_receiver_report(), flute_sender(), init_mad_rlc(), mad_rlc_fill_header(), mad_rlc_free_lists(), mad_rlc_process_rx_sp(), mad_rlc_reset_tx_sp(), parse_args(), and repair_sender().

#define MAX_PACKET_LENGTH   1500

Maximum packet length

Definition at line 117 of file defines.h.

Referenced by recv_packet(), rx_socket_thread(), send_session_close_packet(), and send_unit().

#define MAX_PATH_LENGTH   1024

Maximum path length

Definition at line 118 of file defines.h.

Referenced by analyze_packet(), create_fdt_instance(), encode_directory(), encode_file(), fdtbasedrecv(), fdtbasedsend(), file_gzip_compress(), file_gzip_uncompress(), flute_receiver_report(), flute_sender(), generate_fdt(), getdnsname(), http_file_repair(), main(), name_incomplete_objects(), open_alc_session(), parse_args(), parse_data(), parse_flute_conf_file(), parse_repair_conf_file(), parse_repair_sender_conf_file(), recvfile(), remove_gz_files(), and repair_sender_in_fdt_based_mode().

#define MAX_PORT_LENGTH   10

Maximum length for string that contains port number

Definition at line 119 of file defines.h.

Referenced by flute_file_repair(), flute_receiver_report(), flute_sender(), mad_rlc_process_rx_sp(), main(), and repair_sender().

#define MAX_TX_QUEUE_SIZE   1000

Maximum transmission queue size in packets

Definition at line 120 of file defines.h.

Referenced by add_pkt_to_tx_queue().

#define MEM_ERROR   1

Error when reserving memory

Definition at line 126 of file defines.h.

Referenced by analyze_packet(), fdtbasedrecv(), recvfile(), and repair_sender_in_fdt_based_mode().

#define NO_TX_THREAD   0

Mode when transmission thread is not used in the sender (with Null congestion control and only one channel)

Definition at line 129 of file defines.h.

Referenced by repair_sender_in_fdt_based_mode(), and sender_in_fdt_based_mode().

#define Null   0

Null congestion control mechanism

Definition at line 89 of file defines.h.

Referenced by flute_file_repair(), flute_receiver_report(), flute_sender(), flute_session_size(), open_alc_channel(), open_alc_session(), and sender_in_fdt_based_mode().

#define OK   4

Correct packet received

Definition at line 123 of file defines.h.

Referenced by analyze_packet().

#define PAD   4

Content padding

Definition at line 136 of file defines.h.

Referenced by analyze_packet(), fdt_thread(), fdtbasedrecv(), and receiver_in_ui_mode().

#define PAD_FILES   3

Use content padding with files

Definition at line 146 of file defines.h.

Referenced by encode_directory(), and encode_file().

#define PAD_SUFFIX   "~pad"

Used suffix for content padding

Definition at line 147 of file defines.h.

Referenced by analyze_packet(), fdtbasedrecv(), name_incomplete_objects(), padding_decoder(), and recvfile().

#define PAD_SUFFIX_LEN   (sizeof(PAD_SUFFIX)-1)

Length of used suffix for content padding

Definition at line 148 of file defines.h.

Referenced by fdtbasedrecv(), and recvfile().

#define RECEIVER   1

Operation mode is receiver

Definition at line 113 of file defines.h.

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

#define RECEIVER_SOCKET_BUFFER_SIZE   2000000

Receiver socket buffer size

Definition at line 45 of file defines.h.

Referenced by init_alc_socket().

#define REED_SOL_FEC_INST_ID   0

Reed-Solomon instance id, when Small Block Systematic FEC scheme is used

Definition at line 87 of file defines.h.

Referenced by alc_recv(), alc_recv2(), alc_send(), analyze_packet(), fdt_recv(), flute_sender(), is_enough_source_block_numbers(), main(), parse_args(), parse_data(), and parse_sdp_file().

#define RLC   1

RLC congestion control mechanism

Definition at line 90 of file defines.h.

Referenced by add_pkt_to_tx_queue(), analyze_packet(), flute_file_repair(), flute_receiver_report(), flute_sender(), open_alc_channel(), open_alc_session(), send_session_close_packet(), sender_in_fdt_based_mode(), and tx_thread().

#define RLC_DEAF_PERIOD   10000

Definition at line 95 of file defines.h.

Referenced by init_mad_rlc().

#define RLC_LATE_ACCEPTED   0

maximum number of late packets between two syncronisation points at the toplayer when a new layer can be added

Definition at line 96 of file defines.h.

Referenced by init_mad_rlc().

#define RLC_LOSS_ACCEPTED   0

maximum number of lost packets between two syncronisation points at the toplayer when a new layer can be added

Definition at line 98 of file defines.h.

Referenced by init_mad_rlc().

#define RLC_LOSS_LIMIT   1

RLC_LOSS_LIMIT / RLC_LOSS_TIMEOUT is the max loss rate for packet. If this rate is reached then we should drop the highest layer.

Definition at line 101 of file defines.h.

Referenced by init_mad_rlc().

#define RLC_LOSS_TIMEOUT   20

RLC_LOSS_LIMIT / RLC_LOSS_TIMEOUT is the max loss rate for packet. If this rate is reached then we should drop the highest layer.

Definition at line 103 of file defines.h.

Referenced by init_mad_rlc().

#define RLC_MAX_LATES   100

Maximum number of late packets

Definition at line 105 of file defines.h.

Referenced by mad_rlc_check_sequence().

#define RLC_PKT_TIMEOUT   500

time to wait for a late packet before assuming it's lost (500 ms)

Definition at line 100 of file defines.h.

Referenced by init_mad_rlc().

#define RLC_SP_CYCLE   250

250 ms, for fast layer addition

Definition at line 93 of file defines.h.

Referenced by init_mad_rlc().

#define RLC_WAIT_AFTER_SP   2

packets to wait before start sending after syncronisation point

Definition at line 94 of file defines.h.

Referenced by add_pkt_to_tx_queue(), and open_alc_channel().

#define RS_FEC_ENC_ID   3

Reed-Solomon FEC scheme, identifier not yet decided, 3 used temporarily

Definition at line 81 of file defines.h.

Referenced by alc_recv(), alc_recv2(), alc_send(), analyze_packet(), calculate_packet_length(), create_fdt_instance(), encode_directory(), encode_file(), fdt_recv(), generate_fdt(), is_enough_source_block_numbers(), parse_args(), parse_sdp_file(), and send_unit().

#define SB_LB_E_FEC_ENC_ID   128

Small Block, Large Block and Expandable FEC scheme

Definition at line 83 of file defines.h.

Referenced by alc_send(), analyze_packet(), calculate_packet_length(), is_enough_source_block_numbers(), parse_args(), and send_unit().

#define SB_SYS_FEC_ENC_ID   129

Small Block Systematic FEC scheme

Definition at line 84 of file defines.h.

Referenced by alc_recv(), alc_recv2(), alc_send(), analyze_packet(), calculate_packet_length(), create_fdt_instance(), encode_directory(), encode_file(), fdt_recv(), flute_sender(), generate_fdt(), is_enough_source_block_numbers(), IsFECOTIInFDT(), main(), parse_args(), parse_data(), parse_sdp_file(), repair_sender_in_fdt_based_mode(), and send_unit().

#define SENDER   0

Operation mode is sender

Definition at line 112 of file defines.h.

Referenced by close_alc_socket(), init_alc_socket(), init_mad_rlc(), main(), open_alc_channel(), open_alc_session(), parse_args(), and start_flute_process().

#define SIMPLE_XOR_FEC_ENC_ID   2

Simple XOR FEC scheme

Definition at line 80 of file defines.h.

Referenced by alc_recv(), alc_recv2(), alc_send(), analyze_packet(), calculate_packet_length(), fdt_recv(), is_enough_source_block_numbers(), main(), parse_args(), parse_data(), parse_sdp_file(), and send_unit().

#define SSM

If you want to compile the code in a system where SSM is not supported undefine SSM. For example in Windows 2000 SSM is not supported.

Definition at line 59 of file defines.h.

#define timeb   _timeb

Definition at line 51 of file defines.h.

Referenced by open_alc_session(), and session_kbit_rate().

#define TX_THREAD   1

Mode when ransmission thread is used in the sender

Definition at line 131 of file defines.h.

Referenced by alc_send(), fdtbasedsend(), send_fdt_instance(), send_file(), and sender_in_fdt_based_mode().

#define USE_RETRIEVE_UNIT

Use retrieve_unit() function

Definition at line 62 of file defines.h.

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

#define USE_ZLIB

Use ZLIB compression library

Definition at line 61 of file defines.h.

#define WAITING_FDT   5

FDT instance is in parsing state

Definition at line 122 of file defines.h.

Referenced by analyze_packet().

#define ZLIB   1

ZLIB content encoding

Definition at line 133 of file defines.h.

Referenced by analyze_packet(), fdt_thread(), recvfile(), and send_unit().

#define ZLIB_BUFLEN   16384

Buffer length used with zlib library

Definition at line 139 of file defines.h.

Referenced by gz_compress(), and gz_uncompress().

#define ZLIB_FDT   1

Use ZLIB content encoding with FDT

Definition at line 142 of file defines.h.

Referenced by encode_file(), fdtbasedsend(), and send_unit().

#define ZLIB_FDT_AND_GZIP_FILES   2

Use ZLIB content encoding with FDT and GZIP content encoding with files

Definition at line 143 of file defines.h.

Referenced by encode_directory(), encode_file(), fdtbasedsend(), repair_sender_in_fdt_based_mode(), send_unit(), and sender_in_fdt_based_mode().


Generated on Fri Mar 9 20:00:50 2007 for MAD-FCL by  doxygen 1.5.0