with 36errors

Dependencies:   MTS-Serial libxDot-dev-mbed5-deprecated

Fork of Dot-AT-Firmware by MultiTech

CommandTerminal/CmdDisableDutyCycle.cpp

Committer:
faendder
Date:
2017-07-09
Revision:
18:75cd82d6298c
Parent:
14:f9a77400b622

File content as of revision 18:75cd82d6298c:

#include "CmdDisableDutyCycle.h"

CmdDisableDutyCycle::CmdDisableDutyCycle()
: Command("Disable Duty Cycle", "AT+DD", "Disable duty cycle for TESTING PURPOSES ONLY!!! This setting will not be saved to config.", "(0-1)") {
    _queryable = true;
}

uint32_t CmdDisableDutyCycle::action(std::vector<std::string> args) {

    if (args.size() == 1) {
        CommandTerminal::Serial()->writef("%lu\r\n", CommandTerminal::Dot()->getDisableDutyCycle());
    } else if (args.size() == 2) {
        CommandTerminal::Dot()->setDisableDutyCycle(args[1] == "1");
    }

    return 0;
}

bool CmdDisableDutyCycle::verify(std::vector<std::string> args) {

    if (args.size() > 2) {
        CommandTerminal::setErrorMessage("Invalid parameter, expects (0-1)");
        return false;
    }

    if (args.size() == 2) {
        int bytes;

        sscanf(args[1].c_str(), "%d", &bytes);

        if (!(bytes == 0 || bytes == 1)) {
            CommandTerminal::setErrorMessage("Invalid parameter, expects (0-1)");
            return false;
        }
    }

    return true;
}