Modularizando o src

Dependencies:   EALib EthernetInterface_vz mbed-rtos mbed

Fork of header_main_colinas_V0-20-09-14 by VZTECH

Revision:
63:0d95da692bb4
Parent:
62:07e5bdc9f8f7
Child:
64:5b011d5707d2
--- a/main.cpp	Tue Oct 28 11:32:06 2014 +0000
+++ b/main.cpp	Tue Oct 28 12:44:45 2014 +0000
@@ -86,6 +86,12 @@
             }
         }
     }
+    
+    for( register uint16_t i = 0; i < __CB_BUFFER_SIZE__; i++ ){
+        cb_rx_buffer[ i ] = 0;
+        cb_tx_buffer[ i ] = 0;
+    }
+    
     reset_leds();
     udp_timer.start();
     send_msg("Ready");
@@ -98,11 +104,11 @@
         
         if( rx ){
             char str[ 1024 ];
-            strcpy( str, "RX ::  " );
+            strcpy( str, "RX :: \n\r " );
             for( register uint16_t i = 0; i < __CB_BUFFER_SIZE__; i++ ){
                 char tmp[ 16 ];
                 strcat( str, itoa( cb_rx_buffer[ i ], tmp, 16 ) );
-                if( ( i != 0 ) && !( i % 15 ) ) strcat( str, "\n\r " );
+                if( ( i != 0 ) && !( ( i + 1 ) % 20 ) ) strcat( str, "\n\r " );
                 
                 else strcat( str, " " );
             }
@@ -110,6 +116,40 @@
             rx = false;    
         }
         
+        if( tx ){
+            char str[ 1024 ];
+            strcpy( str, "TX :: \n\r " );
+            for( register uint16_t i = 0; i < __CB_BUFFER_SIZE__; i++ ){
+                char tmp[ 16 ];
+                strcat( str, itoa( cb_tx_buffer[ i ], tmp, 16 ) );
+                if( ( i != 0 ) && !( ( i + 1 ) % 20 ) ) strcat( str, "\n\r " );
+                
+                else strcat( str, " " );
+            }
+            send_msg( "%s", str );
+            tx = false;    
+        }
+        
+        if( r_stats ){
+            boot_counter = 0; 
+            registry_counter = 0; 
+            invite_counter = 0; 
+            audio_counter = 0; 
+            telemetry_counter = 0; 
+            cb_bye_counter = 0; 
+            prompt_counter = 0; 
+            flood_counter = 0; 
+            r_stats = false;
+            stats = true;
+        }
+        if( stats ){
+            char str[ 200 ];
+            snprintf( str, 1024, "\n\rReceived Pkgs::\n\r Boot :: %u\n\r Registry :: %u\n\r Ivite :: %u\n\r Audio :: %u\n\r Telemetry :: %u\n\r Cb_by :: %u\n\r Prompt :: %u\n\r Flood :: %u\n\r", 
+                boot_counter, registry_counter, invite_counter, audio_counter, telemetry_counter, cb_bye_counter, prompt_counter, flood_counter );
+            send_msg( str );
+            stats =false;
+        }
+        
         if( list ){
             send_msg("Registred %d CBx", v_cb->size() );
             if( v_cb->size() == 0 ){
@@ -163,6 +203,7 @@
             }
             pshowcb = 0;
         }
+        /*
         if( cb_status ){
             cb_status = false;
             send_msg("Registred %d CBx", v_cb->size() );
@@ -189,6 +230,7 @@
                 send_msg( "%s", str );
             }
         }
+        */
         
         if( pflood == 1 ) flood();               
         
@@ -292,6 +334,7 @@
                 break;
                 
             case __CB_BYE__ : {
+                cb_bye_counter++;
                 Call_Box * cb = __find_CB__( v_cb, ext );
                 if( cb != NULL ){
                     data[ 0 ] |= BIT7;
@@ -318,6 +361,7 @@
             }break;
             
             case __INVITE__ : {
+                invite_counter++;
                 if( debug_main ) debug_msg("Request Invite received from Cbx %i", ext);
                 Call_Box * cb = __find_CB__( v_cb, ext );
                 if( cb == NULL ){
@@ -417,6 +461,7 @@
                 }                            
             }break;
             case __REGISTRY__ : {
+                registry_counter++;
                 Call_Box * cb = NULL;
                 
                 data[ 0 ] |= BIT7 ;
@@ -434,15 +479,18 @@
                 cb->registry();
                 }break;
             case __BOOT__ : {
+                boot_counter++;
                 __send_to_cb__( __build_cb_package__( ext, port, __REGISTRY__, 
                     ( char * )data, data[ 0 ], __CB_BUFFER_SIZE__ - __VZ_HEADER_OFFSET__, write_buffer ) );
                 }break;
             case __TELEMETRY__ : {
+                telemetry_counter++;
                 if( debug_telemetry ) send_msg("::telemetry from %d - %d::", ext, port );
                     build_telemetry_report( ext, port, ( char *)data );
                 }break;
                 
             case __PROMPT__ : {
+                prompt_counter++;
                 send_msg( "Prompt pkg from ( %i, %i ) ::", ext, port );
                 /*
                 if( tcp_session ){ // udp ? 
@@ -466,6 +514,7 @@
                 }
                 }break;
             case __AUDIO__ : {
+                audio_counter++;
                 Call_Box * cb;
                 VZ_call * call = NULL;
                 cb = NULL;