| 279 | void |
| 280 | CognitiveRadioShell::SetActiveMission(int32_t socketFD) |
| 281 | { |
| 282 | char buffer[256]; |
| 283 | |
| 284 | LOG("Cognitive Radio Shell:: Received Set Active Mission command from host.\n"); |
| 285 | |
| 286 | // Read the name of the active mission to be set from the host. |
| 287 | memset(buffer, 0, 256); |
| 288 | ReadMessage(commandSocketFD, buffer); |
| 289 | |
| 290 | // Send command to SML |
| 291 | SendMessage(ceSocketFD, "set_active_mission"); |
| 292 | SendMessage(ceSocketFD, buffer); |
| 293 | |
| 294 | // Get ack from SML saying the mission was set properly |
| 295 | memset(buffer, 0, 256); |
| 296 | ReadMessage(ceSocketFD, buffer); |
| 297 | |
| 298 | // Forward ack to host |
| 299 | SendMessage(commandSocketFD, buffer); |
| 300 | } |
499 | | if(!SML_present) { |
500 | | LOG("Cognitive Radio Shell:: Passing on observables to Cognitive Engine\n"); |
501 | | SendMessage(ceSocketFD,"request_optimization"); |
502 | | sprintf(counter,"%i",numObservables); |
503 | | SendMessage(ceSocketFD,counter); |
504 | | for(size_t i = 0; i < numObservables; i++) { |
505 | | SendMessage(ceSocketFD,o[i].name.c_str()); |
506 | | sprintf(var,"%f",o[i].value); |
507 | | SendMessage(ceSocketFD,var); |
508 | | } |
| 521 | LOG("Cognitive Radio Shell:: Passing on observables.\n"); |
| 522 | SendMessage(ceSocketFD,"request_optimization"); |
| 523 | sprintf(counter,"%i",numObservables); |
| 524 | SendMessage(ceSocketFD,counter); |
| 525 | for(size_t i = 0; i < numObservables; i++) { |
| 526 | SendMessage(ceSocketFD,o[i].name.c_str()); |
| 527 | sprintf(var,"%f",o[i].value); |
| 528 | SendMessage(ceSocketFD,var); |
| 529 | } |
510 | | LOG("Cognitive Radio Shell:: Passing on current parameters to Cognitive Engine\n"); |
511 | | sprintf(counter,"%i",numCurrentParameters); |
512 | | SendMessage(ceSocketFD,counter); |
513 | | for(size_t i = 0; i < numCurrentParameters; i++) { |
514 | | SendMessage(ceSocketFD,cp[i].name.c_str()); |
515 | | sprintf(var,"%f",cp[i].value); |
516 | | SendMessage(ceSocketFD,var); |
517 | | } |
518 | | } |
519 | | |
520 | | LOG("Cognitive Radio Shell:: Receiving optimized parameters from Cognitive Engine.\n"); |
| 531 | LOG("Cognitive Radio Shell:: Passing on current parameters.\n"); |
| 532 | sprintf(counter,"%i",numCurrentParameters); |
| 533 | SendMessage(ceSocketFD,counter); |
| 534 | for(size_t i = 0; i < numCurrentParameters; i++) { |
| 535 | SendMessage(ceSocketFD,cp[i].name.c_str()); |
| 536 | sprintf(var,"%f",cp[i].value); |
| 537 | SendMessage(ceSocketFD,var); |
| 538 | } |
| 539 | |
| 540 | LOG("Cognitive Radio Shell:: Receiving optimized parameters.\n"); |