1 #ifndef _MULTIRAT_MAIN__
2 #define _MULTIRAT_MAIN__
4 #include "multirat_SB_http.h"
6 #define MAX_CONF_VAL_SIZE (50)
7 #define EXPECTED_BYTE (524288)
8 #define MULTIRAT_BLOCK_DIV (20)
9 #define MULTIRAT_BLOCK_DIV_CON (10)
10 #define MIN_MULTIRAT_BLOCK_SIZE (1048576)
11 #define MIN_MULTIRAT_BLOCK_SIZE_CON (2*1048576)
12 #define MAX_MULTIRAT_BLOCK_SIZE (5*1024*1024)
13 #define SLEEP_TIME (100000)
14 #define MULTIRAT_UPPER_LIMIT (5242880)
15 #define MULTIRAT_LOWER_LIMIT (10*1048576)
16 #define MULTIRAT_LOWER_LIMIT_TWO_CHUNK (15*1048576)
17 #define KEEPALIVE_SUPPORT 0
18 #define DEFAULT_INTERFACE "wlan0"
19 #define MAIN_SOCKET_DEFAULT 0 /* Change to 1 if LTE is default */
20 #define SPEED_TIMEOUT (30)
21 #define BLOCK_SIZE_SPEED (32764)
22 #define MIN_SIZE_TO_HANDOVER (1048576)
23 #define MIN_LAST_CHUNK (3145728)
24 #define MIN_DATA_FOR_SPEED (131072)
27 #define MIN_BLOCK_SIZE (32768)
28 #define MAX_BLOCK_SIZE (1048576)
29 #define MIN_BLOCK_SIZE_SPEED (4*32768)
31 #define MULTIRAT_SIZE_THRESHOLD (30*1048576)
33 #define MIN_FILE_NODE_SIZE (20*1048576)/*File thread remain active if filenode>this*/
34 #define FILE_THREAD_SOCK_CREATE 1
35 #define FILE_THREAD_SOCK_READ 2
37 #define MULTIRAT_TEMP_THRESHOLD 2
38 #define MULTIRAT_CHUNK_SIZE (20*1048576)
39 #define BLOCK_TIME_OUT (8*1000*1000)
40 #define TEMP_TIME_OUT (3*1000*1000)
42 #define LTE_IFACE_NAME "rmnet0"
43 #define WIFI_IFACE_NAME "wlan0"
46 #define WATCH_DOG_CONNECT_TIMEOUT 2
53 * @brief get intance of multirat configuration
55 * @return multirate configuration object
57 struct multirat_configuration* multirat_configuration_get_instance();
60 * @brief read the multirate configuartion data
63 * @retval TRUE read data Success
64 * @retval FALSE read data Failure
66 int multirat_configuration_readdata();
69 * @brief get multirat configuartion
70 * @param[in] data None
74 void multirat_configuration_get_configuration(int8 *data);
77 * @brief print entry value for multirate configuartion
81 void multirat_configuration_print_entry_value();
84 * @brief set the default value for multirate configuartion
88 void multirat_configuration_set_default_value(void);
91 * @brief get threshold multirat configuration
93 * @return multirate threasold value
95 int32 get_multirat_threshold();
98 * @brief get threshold temparature configuartion
100 * @return default temparture
102 int32 get_multirat_temp_threshold();
104 uint32 lib_init_success(void);
106 uint32 smartbonding_client_init(void);