Modularizando o src

Dependencies:   EALib EthernetInterface_vz mbed-rtos mbed

Fork of header_main_colinas_V0-20-09-14 by VZTECH

Revision:
74:81c47fff88a5
Child:
78:1353744f01e1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/call_box_manager.cpp	Mon Nov 24 16:43:16 2014 +0000
@@ -0,0 +1,34 @@
+#include "call_box_manager.h"
+
+Call_Box * __find_CB__( Vector * v_cb, int ext ){
+    Call_Box * cb = NULL;
+    for( register int i = 0; i < v_cb->size(); i++ ){
+        cb = ( Call_Box * )v_cb->get_element( i );
+        if( cb->get_ext() == ext ) return( cb );
+    }
+    return( NULL );
+}
+
+void registry_aging( Vector * v_cb, uint8_t * data, uint8_t * write_buffer ){
+    Call_Box * cb = NULL;
+    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 ){
+                    if( debug_alive ) debug_msg("( ext %d removed )", cb->get_ext() );
+                    //cb->unregistry();
+                    v_cb->remove_element( i );
+                    delete( cb );
+                    break;
+                }else{
+                    if( debug_alive ) debug_msg("Ping Cbx %d", cb->get_ext() );      
+                    cb->set_msg_id( ( ( cb->get_msg_id() ) + 1 ) & ( BIT7 ^ 0xff ) );                
+                    send2callboxes( __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();
+                }
+            }
+        }
+    }
+}
\ No newline at end of file