Modularizando o src
Dependencies: EALib EthernetInterface_vz mbed-rtos mbed
Fork of header_main_colinas_V0-20-09-14 by
config_manager.cpp
- Committer:
- klauss
- Date:
- 2015-11-24
- Revision:
- 137:32dd35a6dbc9
- Parent:
- 135:2f4290590e51
File content as of revision 137:32dd35a6dbc9:
%: include "config_manager.h" extern Serial pc; ConfigManager::ConfigManager ( void ) { int siRet = fget_ip ( chHeader_ip, sizeof ( chHeader_ip ) ); if ( siRet < 0 ) { strncpy ( chHeader_ip, MY_IP, sizeof ( chHeader_ip ) - 1 ); set_header_ip ( MY_IP ); } siRet = fget_server_ip ( chServer_ip, sizeof ( chServer_ip ) ); if ( siRet < 0 ) { strncpy ( chServer_ip, SERVER_IP, sizeof ( chServer_ip ) - 1 ); set_server_ip ( SERVER_IP ); } siRet = fget_mask ( chNet_mask, sizeof ( chNet_mask ) ); if ( siRet < 0 ) { strncpy ( chNet_mask, MY_MSK, sizeof ( chNet_mask ) - 1 ); set_net_mask ( MY_MSK ); } siRet = fget_gateway ( chGateway, sizeof ( chGateway ) ); if ( siRet < 0 ) { strncpy ( chGateway, MY_GTW, sizeof ( chGateway ) - 1 ); set_gateway ( MY_GTW ); } siRet = fget_fw_ip ( chFw_server_ip, sizeof ( chFw_server_ip ) ); if ( siRet < 0 ) { strncpy ( chFw_server_ip, FW_SERVER_IP, sizeof ( chFw_server_ip ) - 1 ); set_fw_server_ip ( FW_SERVER_IP ); } siRet = fget_header_ext (); if ( siRet < 0 ) { u16Ext = u16_MY_EXT; set_header_ext ( u16_MY_EXT ); } else { u16Ext = ( uint16_t ) siRet; } siRet = fget_header_sip_port (); if ( siRet < 0 ) { u16Port = u16_MY_PORT; set_header_sip_port ( u16_MY_PORT ); } else { u16Port = ( uint16_t ) siRet; } siRet = fget_server_ext (); if ( siRet < 0 ) { u16Server_ext = u16_PEER_EXT; set_server_ext ( u16_PEER_EXT ); } else { u16Server_ext = ( uint16_t ) siRet; } siRet = fget_server_port (); if ( siRet < 0 ) { u16Server_port = u16_SERVER_PORT; set_server_port ( u16_SERVER_PORT ); } else { u16Server_port = ( uint16_t ) siRet; } siRet = fget_fw_port (); if ( siRet < 0 ) { u16Fw_server_port = u16_FW_SERVER_PORT; set_fw_server_port ( u16_FW_SERVER_PORT ); } else { u16Fw_server_port = ( uint16_t ) siRet; } siRet = fget_max_ext (); if ( siRet < 0 ) { u16Max_ext = u16_MAX_EXT; set_max_ext ( u16_MAX_EXT ); } else { u16Max_ext = ( uint16_t ) siRet; } siRet = fget_min_ext (); if ( siRet < 0 ) { u16Min_ext = u16_MIN_EXT; set_min_ext ( u16_MIN_EXT ); } else { u16Min_ext = ( uint16_t ) siRet; } siRet = fget_shift_port (); if ( siRet < 0 ) { u16Shift_port = u16_SHIFT_PORT; set_shift_port ( u16_SHIFT_PORT ); } else { u16Shift_port = ( uint16_t ) siRet; } siRet = fget_acceptable_delay (); if ( siRet < 0 ) { u8Acceptable_delay = u8_ACCEPTABLE_DELAY; fset_acceptable_delay ( u8_ACCEPTABLE_DELAY ); } else { u8Acceptable_delay = ( uint8_t ) siRet; } siRet = fget_tcp_port_listener (); if ( siRet < 0 ) { u16Tcp_port_listener = u16_TCP_PORT_LISTENER; set_tcp_port_listener ( u16_TCP_PORT_LISTENER ); } else { u16Tcp_port_listener = ( uint16_t ) siRet; } siRet = fget_udp_port_listener (); if ( siRet < 0 ) { u16Udp_port_listener = u16_UDP_PORT_LISTENER; set_udp_port_listener ( u16_UDP_PORT_LISTENER ); } else { u16Udp_port_listener = ( uint16_t ) siRet; } strcpy ( this -> chClock_erver_ip, this -> chServer_ip ); boolCallBoxDetachMode = fget_cbx_detach_mode ( &siRet ); if ( siRet < 0 ) { boolCallBoxDetachMode = false; set_cbx_detach_mode ( false ); } boolCallBoxWakeMode = fget_cbx_wake_mode ( &siRet ); if ( siRet < 0 ) { boolCallBoxWakeMode = true; set_cbx_wake_mode ( true ); } siRet = fget_cbx_mode (); if ( siRet < 0 ) { u8CallBoxMode = u8_CUSTOM_MODE; fset_cbx_mode ( u8_CUSTOM_MODE ); } else { u8CallBoxMode = ( uint8_t ) siRet; if ( u8CallBoxMode == u8_FIBRA_MODE ) { boolCallBoxWakeMode = true; boolCallBoxDetachMode = false; } else if ( u8CallBoxMode == u8_RADIO_MODE ) { boolCallBoxWakeMode = false; boolCallBoxDetachMode = true; } } set_modified_false (); } ConfigManager::~ConfigManager ( void ) {} void ConfigManager::restore_defaults_settings ( void ) { set_fw_server_ip ( FW_SERVER_IP ); set_fw_server_port ( u16_FW_SERVER_PORT ); set_gateway ( MY_GTW ); set_header_ext ( u16_MY_EXT ); set_header_ip ( MY_IP ); set_header_sip_port ( u16_MY_PORT ); set_max_ext ( u16_MAX_EXT ); set_min_ext ( u16_MIN_EXT ); set_net_mask ( MY_MSK ); set_server_ext ( u16_PEER_EXT ); set_server_ip ( SERVER_IP ); set_server_port ( u16_SERVER_PORT ); set_shift_port ( u16_SHIFT_PORT ); set_tcp_port_listener ( u16_TCP_PORT_LISTENER ); set_udp_port_listener ( u16_UDP_PORT_LISTENER ); set_modified_true (); } char * ConfigManager::get_header_ip ( char * buffer ) { strcpy ( buffer, chHeader_ip ); return ( buffer ); } char * ConfigManager::get_server_ip ( char * buffer ) { strcpy ( buffer, chServer_ip ); return ( buffer ); } char * ConfigManager::get_clock_server_ip ( char * buffer ) { return ( get_server_ip ( buffer ) ); } char * ConfigManager::get_net_mask ( char * buffer ) { strcpy ( buffer, chNet_mask ); return ( buffer ); } char * ConfigManager::get_gateway ( char * buffer ) { strcpy ( buffer, chGateway ); return ( buffer ); } char * ConfigManager::get_fw_server_ip ( char * buffer ) { strcpy ( buffer, chFw_server_ip ); return ( buffer ); } uint8_t ConfigManager::get_acceptable_delay ( void ) { return u8Acceptable_delay; } uint16_t ConfigManager::get_ext ( void ) { return ( u16Ext ); } uint16_t ConfigManager::get_port ( void ) { return ( u16Port ); } uint16_t ConfigManager::get_server_ext ( void ) { return ( u16Server_ext ); } uint16_t ConfigManager::get_server_port ( void ) { return ( u16Server_port ); } uint16_t ConfigManager::get_fw_server_port ( void ) { return ( u16Fw_server_port ); } uint16_t ConfigManager::get_max_ext ( void ) { return ( u16Max_ext ); } uint16_t ConfigManager::get_min_ext ( void ) { return ( u16Min_ext ); } uint16_t ConfigManager::get_shift_port ( void ) { return ( u16Shift_port ); } uint16_t ConfigManager::get_udp_port_listener ( void ) { return ( u16Udp_port_listener ); } uint16_t ConfigManager::get_tcp_port_listener ( void ) { return ( u16Tcp_port_listener ); } bool ConfigManager::was_modified ( void ) { return boolModified; } bool ConfigManager::get_cbx_detach_mode ( void ) { return boolCallBoxDetachMode; } bool ConfigManager::get_cbx_wake_mode ( void ) { return boolCallBoxWakeMode; } uint8_t ConfigManager::get_cbx_mode ( void ) { return u8CallBoxMode; } void ConfigManager::set_header_ip ( const char * new_Header_ip ) { fset_header_ip ( new_Header_ip ); strcpy ( chHeader_ip, new_Header_ip ); set_modified_true (); boolHeader_ip_was_modified = true; } void ConfigManager::set_server_ip ( const char * new_Server_ip ) { fset_server_ip ( new_Server_ip ); strcpy ( chServer_ip, new_Server_ip ); set_modified_true (); boolServer_ip_was_modified = true; } void ConfigManager::set_net_mask ( const char * new_Net_mask ) { fset_mask ( new_Net_mask ); strcpy ( chNet_mask, new_Net_mask ); set_modified_true (); boolNet_mask_was_modified = true; } void ConfigManager::set_gateway ( const char * new_Gateway ) { fset_gateway ( new_Gateway ); strcpy ( chGateway, new_Gateway ); set_modified_true (); boolGateway_was_modified = true; } void ConfigManager::set_fw_server_ip ( const char * new_Fw_server_ip ) { fset_fw_ip ( new_Fw_server_ip ); strcpy ( chFw_server_ip, new_Fw_server_ip ); set_modified_true (); boolFw_server_ip_was_modified = true; } void ConfigManager::set_header_ext ( const uint16_t new_Ext ) { fset_header_ext ( new_Ext ); u16Ext = new_Ext; set_modified_true (); boolHeader_ext_was_modified = true; } void ConfigManager::set_header_sip_port ( const uint16_t new_Port ) { fset_header_sip_port ( new_Port ); u16Port = new_Port; set_modified_true (); boolHeader_sip_port_was_modified = true; } void ConfigManager::set_server_ext ( const uint16_t new_Server_ext ) { fset_server_ext ( new_Server_ext ); u16Server_ext = new_Server_ext; set_modified_true (); boolServer_ext_was_modified = true; } void ConfigManager::set_server_port ( const uint16_t new_Server_port ) { fset_server_port ( new_Server_port ); u16Server_port = new_Server_port; set_modified_true (); boolServer_port_was_modified = true; } void ConfigManager::set_fw_server_port ( const uint16_t new_Fw_server_port ) { fset_fw_port ( new_Fw_server_port ); u16Fw_server_port = new_Fw_server_port; set_modified_true (); boolFw_server_port_was_modified = true; } void ConfigManager::set_max_ext ( const uint16_t new_Max_ext ) { fset_max_ext ( new_Max_ext ); u16Max_ext = new_Max_ext; set_modified_true (); boolMax_ext_was_modified = true; } void ConfigManager::set_min_ext ( const uint16_t new_Min_ext ) { fset_min_ext ( new_Min_ext ); u16Min_ext = new_Min_ext; set_modified_true (); boolMin_ext_was_modified = true; } void ConfigManager::set_shift_port ( const uint16_t new_Shift_port ) { fset_shift_port ( new_Shift_port ); u16Shift_port = new_Shift_port; set_modified_true (); boolShift_port_was_modified = true; } void ConfigManager::set_acceptable_delay ( const uint8_t new_acceptable_delay ) { u8Acceptable_delay = new_acceptable_delay; fset_acceptable_delay ( new_acceptable_delay ); } void ConfigManager::set_udp_port_listener ( const uint16_t new_udp_port_listener ) { u16Udp_port_listener = new_udp_port_listener; } void ConfigManager::set_tcp_port_listener ( const uint16_t new_tcp_port_listener ) { u16Tcp_port_listener = new_tcp_port_listener; } void ConfigManager::set_cbx_detach_mode ( const bool new_cbx_detach_mode ) { boolCallBoxDetachMode = new_cbx_detach_mode; fset_cbx_detach_mode ( new_cbx_detach_mode ); cbx_custom_mode_check (); } void ConfigManager::set_cbx_wake_mode ( const bool new_cbx_wake_mode ) { boolCallBoxWakeMode = new_cbx_wake_mode; fset_cbx_wake_mode ( new_cbx_wake_mode ); cbx_custom_mode_check (); } void ConfigManager::set_cbx_mode ( const uint8_t new_cbx_mode ) { u8CallBoxMode = new_cbx_mode; fset_cbx_mode ( new_cbx_mode ); if ( u8CallBoxMode == u8_FIBRA_MODE ) { boolCallBoxWakeMode = true; boolCallBoxDetachMode = false; } else if ( u8CallBoxMode == u8_RADIO_MODE ) { boolCallBoxWakeMode = false; boolCallBoxDetachMode = true; } } void ConfigManager::set_modified_true ( void ) { boolModified = true; } void ConfigManager::set_modified_false ( void ) { boolModified = false; boolHeader_ip_was_modified = false; boolServer_ip_was_modified = false; boolNet_mask_was_modified = false; boolGateway_was_modified = false; boolFw_server_ip_was_modified = false; boolHeader_ext_was_modified = false; boolHeader_sip_port_was_modified = false; boolServer_ext_was_modified = false; boolServer_port_was_modified = false; boolFw_server_port_was_modified = false; boolMax_ext_was_modified = false; boolMin_ext_was_modified = false; boolShift_port_was_modified = false; } bool ConfigManager::header_ip_was_modified ( void ) { return boolHeader_ip_was_modified; } bool ConfigManager::server_ip_was_modified ( void ) { return boolServer_ip_was_modified; } bool ConfigManager::net_mask_was_modified ( void ) { return boolNet_mask_was_modified; } bool ConfigManager::gateway_was_modified ( void ) { return boolGateway_was_modified; } bool ConfigManager::fw_server_ip_was_modified ( void ) { return boolFw_server_ip_was_modified; } bool ConfigManager::header_ext_was_modified ( void ) { return boolHeader_ext_was_modified; } bool ConfigManager::header_sip_port_was_modified ( void ) { return boolHeader_sip_port_was_modified; } bool ConfigManager::server_ext_was_modified ( void ) { return boolServer_ext_was_modified; } bool ConfigManager::server_port_was_modified ( void ) { return boolServer_port_was_modified; } bool ConfigManager::fw_server_port_was_modified ( void ) { return boolFw_server_port_was_modified; } bool ConfigManager::max_ext_was_modified ( void ) { return boolMax_ext_was_modified; } bool ConfigManager::min_ext_was_modified ( void ) { return boolMin_ext_was_modified; } bool ConfigManager::shift_port_was_modified ( void ) { return boolShift_port_was_modified; } void ConfigManager::cbx_custom_mode_check ( void ) { uint8_t value = 0; if ( ( boolCallBoxWakeMode == true ) and ( boolCallBoxDetachMode == false ) ) value = ( u8_FIBRA_MODE ); else if ( ( boolCallBoxWakeMode == false ) and ( boolCallBoxDetachMode == true ) ) value = ( u8_RADIO_MODE ); else { value = u8_CUSTOM_MODE; } u8CallBoxMode = value; fset_cbx_mode ( value ); }