Changeset 437
- Timestamp:
- 08/25/09 14:40:40 (15 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
vtcross/trunk/src/shell/CognitiveRadioShell.cpp
r435 r437 66 66 delete [] observables; 67 67 delete [] utils; 68 delete Radio_Info;68 delete radio_info; 69 69 } 70 70 … … 219 219 CognitiveRadioShell::RegisterCognitiveEngine(int32_t socketFD) 220 220 { 221 LOG("Cognitive Radio Shell:: Received registration from Cognitive Engine on socket %d.\n" \221 LOG("Cognitive Radio Shell:: Received registration from Cognitive Engine on socket %d.\n", \ 222 222 socketFD); 223 223 … … 304 304 LOG("Cognitive Radio Shell:: Received Set Active Mission command from host.\n"); 305 305 306 / / Read the name of the active mission to be set from the host.306 /* Read the name of the active mission to be set from the host. */ 307 307 memset(buffer, 0, 256); 308 308 ReadMessage(commandSocketFD, buffer); 309 309 310 / / Send command to SML310 /* Send command to SML. */ 311 311 SendMessage(ceSocketFD, "set_active_mission"); 312 312 SendMessage(ceSocketFD, buffer); 313 313 314 / / Get ack from SML saying the mission was set properly314 /* Get ack from SML saying the mission was set properly */ 315 315 memset(buffer, 0, 256); 316 316 ReadMessage(ceSocketFD, buffer); 317 317 318 / / Forward ack to host318 /* Forward ack to host */ 319 319 SendMessage(commandSocketFD, buffer); 320 320 } … … 342 342 bool loadOkay = doc.LoadFile(); 343 343 if(!loadOkay) 344 ERROR(1, "Loading radio configuration failed: %s\n", radioConfig);344 ERROR(1, "Loading radio configuration failed: %s\n", radioConfig); 345 345 346 346 TiXmlHandle hDoc(&doc); … … 488 488 LOG("Cognitive Radio Shell:: Parsed %d parameters.\n", radioInfo->numParameters); 489 489 490 /* TODO always returning one seems useless? */ 490 491 return 1; 491 492 } … … 524 525 525 526 LOG("Cognitive Radio Shell:: Attempting to get %i parameters.\n",numCurrentParameters); 526 Parameter * 527 Parameter *cp = new Parameter[numCurrentParameters]; 527 528 528 529 for (size_t i = 0; i < numCurrentParameters; i++){ … … 530 531 ReadMessage(commandSocketFD,buffer); 531 532 cp[i].name = std::string(buffer); 533 532 534 memset(buffer, 0, 256); 533 535 ReadMessage(commandSocketFD,buffer); … … 558 560 } 559 561 562 /* Receive Set of Parameters */ 560 563 LOG("Cognitive Radio Shell:: Receiving optimized parameters.\n"); 561 /* Receive Set of Parameters */562 564 memset(buffer, 0, 256); 563 565 ReadMessage(ceSocketFD, buffer); … … 611 613 ReadMessage(commandSocketFD,buffer); 612 614 p[i].name = std::string(buffer); 615 613 616 memset(buffer, 0, 256); 614 617 ReadMessage(commandSocketFD,buffer); … … 658 661 delete [] o; 659 662 660 return 1;663 return true; 661 664 } 662 665 … … 669 672 670 673 ret = ReadMessage(socketFD, buffer); 671 if(ret == -1) { 672 return ret; 673 } 674 675 // TODO trying to read this code lock makes my eyes bleed 674 if(ret == -1) 675 return ret; 676 677 // TODO trying to read this code block makes my eyes bleed 676 678 if(strcmp(buffer, "register_engine_cognitive") == 0) { 677 679 RegisterCognitiveEngine(socketFD); … … 728 730 fd_set sockSet; 729 731 730 731 732 732 int32_t *servSock = new int32_t[3]; 733 733 … … 757 757 FD_ZERO(&sockSet); 758 758 759 while 759 while(running) { 760 760 /* Zero socket descriptor vector and set for server sockets */ 761 761 /* This must be reset every time select() is called */ … … 780 780 desc_ready -= 1; 781 781 /* Check if request is new or on an existing open descriptor */ 782 if((port == servSock[primary]) || (port == servSock[policy]) || (port == servSock[command])) { 782 if((port == servSock[primary]) || \ 783 (port == servSock[policy]) || \ 784 (port == servSock[command])) { 783 785 do { 784 786 new_sd = AcceptTCPConnection(port); 785 if(new_sd < 0) {787 if(new_sd < 0) 786 788 break; 787 }788 789 789 if(port == servSock[primary]) 790 790 ceSocketFD = new_sd; … … 796 796 ret = HandleMessage(new_sd); 797 797 798 799 800 801 802 803 804 798 if(ret == -1) { 799 FD_CLR(new_sd,&sockSet); 800 close(new_sd); 801 break; 802 } 803 804 FD_SET(new_sd,&sockSet); 805 805 if(new_sd > maxDescriptor) 806 806 maxDescriptor = new_sd; 807 807 808 } while(new_sd != -1); 808 809 } 809 810 else { 810 811 ret = HandleMessage(port); 811 812 813 814 812 if(ret == -1) { 813 FD_CLR(port,&sockSet); 814 close(port); 815 } 815 816 } 816 817 } … … 820 821 821 822 LOG("Closing it all.\n\n"); 823 822 824 /* Close sockets */ 823 825 close(servSock[primary]);