Modularizando o src
Dependencies: EALib EthernetInterface_vz mbed-rtos mbed
Fork of header_main_colinas_V0-20-09-14 by
Diff: utils.cpp
- Revision:
- 7:019b08223b87
- Parent:
- 6:a10de9926fbe
- Child:
- 8:e3bfe62a477e
diff -r a10de9926fbe -r 019b08223b87 utils.cpp --- a/utils.cpp Fri Sep 12 16:46:37 2014 +0000 +++ b/utils.cpp Sat Sep 13 19:21:48 2014 +0000 @@ -42,7 +42,8 @@ } void __init_eth__( EthernetInterface * eth ){ - eth->init( __MY_IP__, __MY_MK__ , __MY_GT__ ); + //eth->init( __MY_IP__, "255.255.255.0", "192.168.120.1" ); + eth->init( __MY_IP__, __MY_MK__, __MY_GW__ ); eth->connect(); // pensar em o que acontece e como sinalizar que nao consegui conectar na web // aparente so da time out, so que algo vai travar quando eu tentar usar a conexao @@ -67,6 +68,30 @@ } void registry_aging( Vector * v_cb, uint8_t * data, uint8_t * write_buffer ){ + Call_Box * cb = NULL; + volatile int tam = v_cb->size(); + if( v_cb && data && write_buffer ){ + for( register int i = 0; i < v_cb->size(); i++ ){ + cb = (Call_Box * )v_cb->get_element( i ); + if( cb->is_timeout() ){ + if( cb->reconfigure_timeout() == 0x00 ){ + debug_msg("( ext %d removed ?", cb->get_ext() ); + //cb->unregistry(); + //v_cb->remove_element( i ); + delete( cb ); + break; + }else{ + cb->set_msg_id( ( ( cb->get_msg_id() ) + 1 ) & ( BIT7 ^ 0xff ) ); + __send_to_cb__( __build_cb_package__( cb->get_ext(), cb->get_port(), __REGISTRY__, + ( char * )data, cb->get_msg_id(), __CB_BUFFER_SIZE__ - __VZ_HEADER_OFFSET__, write_buffer ) ); + cb->registry(); + } + } + } + if( tam != v_cb->size() ) debug_msg("%d ---> %d", tam, v_cb->size() ); + } + + /* Call_Box * cb = NULL; if( v_cb && data && write_buffer ){