Elmo Terminal provides functionality to test Lora radio and access SX1272 chip registers delivered with Elmo board. Also contains example ping-pong application.
Dependencies: SX1272lib mbed-src
Commands/SetVariableCmd.cpp@6:453b018a9ba0, 2015-10-01 (annotated)
- Committer:
- WGorniak
- Date:
- Thu Oct 01 13:13:08 2015 +0000
- Revision:
- 6:453b018a9ba0
- Parent:
- 2:8d8295a51f68
removed sstream from radiocontext
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
WGorniak | 2:8d8295a51f68 | 1 | #include <cstdlib> |
WGorniak | 2:8d8295a51f68 | 2 | #include "SetVariableCmd.h" |
WGorniak | 2:8d8295a51f68 | 3 | #include "dbg.h" |
WGorniak | 2:8d8295a51f68 | 4 | #include "Settings.h" |
WGorniak | 2:8d8295a51f68 | 5 | |
WGorniak | 2:8d8295a51f68 | 6 | SetVariableCmd::SetVariableCmd(Settings* settings) |
WGorniak | 2:8d8295a51f68 | 7 | : Cmd() |
WGorniak | 2:8d8295a51f68 | 8 | , settings_(settings) |
WGorniak | 2:8d8295a51f68 | 9 | { |
WGorniak | 2:8d8295a51f68 | 10 | } |
WGorniak | 2:8d8295a51f68 | 11 | |
WGorniak | 2:8d8295a51f68 | 12 | SetVariableCmd::~SetVariableCmd() |
WGorniak | 2:8d8295a51f68 | 13 | { |
WGorniak | 2:8d8295a51f68 | 14 | } |
WGorniak | 2:8d8295a51f68 | 15 | |
WGorniak | 2:8d8295a51f68 | 16 | string SetVariableCmd::cmd() |
WGorniak | 2:8d8295a51f68 | 17 | { |
WGorniak | 2:8d8295a51f68 | 18 | return "sv"; |
WGorniak | 2:8d8295a51f68 | 19 | } |
WGorniak | 2:8d8295a51f68 | 20 | |
WGorniak | 2:8d8295a51f68 | 21 | string SetVariableCmd::desc() |
WGorniak | 2:8d8295a51f68 | 22 | { |
WGorniak | 2:8d8295a51f68 | 23 | return "sets variables - sv [variable1 value1 [variable2 value2 [....]]]"; |
WGorniak | 2:8d8295a51f68 | 24 | } |
WGorniak | 2:8d8295a51f68 | 25 | |
WGorniak | 2:8d8295a51f68 | 26 | bool SetVariableCmd::execute(list<string> args) |
WGorniak | 2:8d8295a51f68 | 27 | { |
WGorniak | 2:8d8295a51f68 | 28 | if (args.empty()) |
WGorniak | 2:8d8295a51f68 | 29 | { |
WGorniak | 2:8d8295a51f68 | 30 | printf("%s\r\n", settings_->help().c_str()); |
WGorniak | 2:8d8295a51f68 | 31 | } |
WGorniak | 2:8d8295a51f68 | 32 | |
WGorniak | 2:8d8295a51f68 | 33 | for (list<string>::const_iterator p = args.begin(); p != args.end(); ++p) |
WGorniak | 2:8d8295a51f68 | 34 | { |
WGorniak | 2:8d8295a51f68 | 35 | const string value = *p; |
WGorniak | 2:8d8295a51f68 | 36 | ++p; |
WGorniak | 2:8d8295a51f68 | 37 | if (p == args.end()) |
WGorniak | 2:8d8295a51f68 | 38 | { |
WGorniak | 2:8d8295a51f68 | 39 | printf("no value for %s\r\n", value.c_str()); |
WGorniak | 2:8d8295a51f68 | 40 | printf("%s\r\n", settings_->help(value).c_str()); |
WGorniak | 2:8d8295a51f68 | 41 | return false; |
WGorniak | 2:8d8295a51f68 | 42 | } |
WGorniak | 2:8d8295a51f68 | 43 | |
WGorniak | 2:8d8295a51f68 | 44 | if (!settings_->set(value, atoi((*p).c_str()))) |
WGorniak | 2:8d8295a51f68 | 45 | { |
WGorniak | 2:8d8295a51f68 | 46 | printf("bad value for %s\r\n", value.c_str()); |
WGorniak | 2:8d8295a51f68 | 47 | printf("%s\r\n", settings_->help(value).c_str()); |
WGorniak | 2:8d8295a51f68 | 48 | return false; |
WGorniak | 2:8d8295a51f68 | 49 | } |
WGorniak | 2:8d8295a51f68 | 50 | |
WGorniak | 2:8d8295a51f68 | 51 | printf("set %s\r\n", settings_->describe(value).c_str()); |
WGorniak | 2:8d8295a51f68 | 52 | } |
WGorniak | 2:8d8295a51f68 | 53 | return true; |
WGorniak | 2:8d8295a51f68 | 54 | } |
WGorniak | 2:8d8295a51f68 | 55 | |
WGorniak | 2:8d8295a51f68 | 56 | string SetVariableCmd::getResponse(void) |
WGorniak | 2:8d8295a51f68 | 57 | { |
WGorniak | 2:8d8295a51f68 | 58 | return ""; |
WGorniak | 2:8d8295a51f68 | 59 | } |
WGorniak | 2:8d8295a51f68 | 60 |