int YRealTimeClock::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "unixTime")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _unixTime = atol(j.token); return 1; } if(!strcmp(j.token, "dateTime")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _dateTime = _parseString(j); return 1; } if(!strcmp(j.token, "utcOffset")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _utcOffset = atoi(j.token); return 1; } if(!strcmp(j.token, "timeSet")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _timeSet = (Y_TIMESET_enum)atoi(j.token); return 1; } failed: return YFunction::_parseAttr(j); }
int YAltitude::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "qnh")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _qnh = floor(atof(j.token) * 1000.0 / 65536.0 + 0.5) / 1000.0; return 1; } if(!strcmp(j.token, "technology")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _technology = _parseString(j); return 1; } failed: return YSensor::_parseAttr(j); }
int YQuadratureDecoder::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "speed")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _speed = floor(atof(j.token) * 1000.0 / 65536.0 + 0.5) / 1000.0; return 1; } if(!strcmp(j.token, "decoding")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _decoding = (Y_DECODING_enum)atoi(j.token); return 1; } failed: return YSensor::_parseAttr(j); }
int YCarbonDioxide::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "abcPeriod")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _abcPeriod = atoi(j.token); return 1; } if(!strcmp(j.token, "command")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _command = _parseString(j); return 1; } failed: return YSensor::_parseAttr(j); }
int YFiles::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "filesCount")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _filesCount = atoi(j.token); return 1; } if(!strcmp(j.token, "freeSpace")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _freeSpace = atoi(j.token); return 1; } failed: return YFunction::_parseAttr(j); }
int YLed::_parse(yJsonStateMachine& j) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL || j.st != YJSON_PARSE_STRUCT) { failed: return -1; } while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if(!strcmp(j.token, "logicalName")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _logicalName = _parseString(j); } else if(!strcmp(j.token, "advertisedValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _advertisedValue = _parseString(j); } else if(!strcmp(j.token, "power")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _power = (Y_POWER_enum)atoi(j.token); } else if(!strcmp(j.token, "luminosity")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _luminosity = atoi(j.token); } else if(!strcmp(j.token, "blinking")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _blinking = (Y_BLINKING_enum)atoi(j.token); } else { // ignore unknown field yJsonSkip(&j, 1); } } if(j.st != YJSON_PARSE_STRUCT) goto failed; return 0; }
int YLightSensor::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "measureType")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _measureType = (Y_MEASURETYPE_enum)atoi(j.token); return 1; } failed: return YSensor::_parseAttr(j); }
int YGyro::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "xValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _xValue = atof(j.token)/65536; return 1; } if(!strcmp(j.token, "yValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _yValue = atof(j.token)/65536; return 1; } if(!strcmp(j.token, "zValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _zValue = atof(j.token)/65536; return 1; } failed: return YSensor::_parseAttr(j); }
int YMagnetometer::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "xValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _xValue = floor(atof(j.token) * 1000.0 / 65536.0 + 0.5) / 1000.0; return 1; } if(!strcmp(j.token, "yValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _yValue = floor(atof(j.token) * 1000.0 / 65536.0 + 0.5) / 1000.0; return 1; } if(!strcmp(j.token, "zValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _zValue = floor(atof(j.token) * 1000.0 / 65536.0 + 0.5) / 1000.0; return 1; } failed: return YSensor::_parseAttr(j); }
int YGenericSensor::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "signalValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _signalValue = floor(atof(j.token) * 1000.0 / 65536.0 + 0.5) / 1000.0; return 1; } if(!strcmp(j.token, "signalUnit")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _signalUnit = _parseString(j); return 1; } if(!strcmp(j.token, "signalRange")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _signalRange = _parseString(j); return 1; } if(!strcmp(j.token, "valueRange")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _valueRange = _parseString(j); return 1; } if(!strcmp(j.token, "signalBias")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _signalBias = floor(atof(j.token) * 1000.0 / 65536.0 + 0.5) / 1000.0; return 1; } if(!strcmp(j.token, "signalSampling")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _signalSampling = (Y_SIGNALSAMPLING_enum)atoi(j.token); return 1; } failed: return YSensor::_parseAttr(j); }
int YWireless::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "linkQuality")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _linkQuality = atoi(j.token); return 1; } if(!strcmp(j.token, "ssid")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _ssid = _parseString(j); return 1; } if(!strcmp(j.token, "channel")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _channel = atoi(j.token); return 1; } if(!strcmp(j.token, "security")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _security = (Y_SECURITY_enum)atoi(j.token); return 1; } if(!strcmp(j.token, "message")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _message = _parseString(j); return 1; } if(!strcmp(j.token, "wlanConfig")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _wlanConfig = _parseString(j); return 1; } failed: return YFunction::_parseAttr(j); }
YFileRecord::YFileRecord(const string& json) { yJsonStateMachine j; // Parse JSON data j.src = json.c_str(); j.end = j.src + strlen(j.src); j.st = YJSON_START; if(yJsonParse(&j) != YJSON_PARSE_AVAIL || j.st != YJSON_PARSE_STRUCT) { return ; } while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if (!strcmp(j.token, "name")) { if (yJsonParse(&j) != YJSON_PARSE_AVAIL) { return ; } _name = (string)j.token; while(j.next == YJSON_PARSE_STRINGCONT && yJsonParse(&j) == YJSON_PARSE_AVAIL) { _name =(string)j.token; } } else if(!strcmp(j.token, "crc")) { if (yJsonParse(&j) != YJSON_PARSE_AVAIL) { return; } _crc = atoi(j.token);; } else if(!strcmp(j.token, "size")) { if (yJsonParse(&j) != YJSON_PARSE_AVAIL) { return; } _size = atoi(j.token);; } else { yJsonSkip(&j, 1); } } }
YWlanRecord::YWlanRecord(const string& json):_ssid(""),_channel(-1),_sec(""),_rssi(-1) { yJsonStateMachine j; // Parse JSON data j.src = json.c_str(); j.end = j.src + strlen(j.src); j.st = YJSON_START; if(yJsonParse(&j) != YJSON_PARSE_AVAIL || j.st != YJSON_PARSE_STRUCT) { return ; } while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if (!strcmp(j.token, "ssid")) { if (yJsonParse(&j) != YJSON_PARSE_AVAIL) { return ; } _ssid = (string)j.token; while(j.next == YJSON_PARSE_STRINGCONT && yJsonParse(&j) == YJSON_PARSE_AVAIL) { _ssid +=(string)j.token; } }else if (!strcmp(j.token, "sec")) { if (yJsonParse(&j) != YJSON_PARSE_AVAIL) { return ; } _sec = (string)j.token; while(j.next == YJSON_PARSE_STRINGCONT && yJsonParse(&j) == YJSON_PARSE_AVAIL) { _sec +=(string)j.token; } } else if(!strcmp(j.token, "channel")) { if (yJsonParse(&j) != YJSON_PARSE_AVAIL) { return; } _channel = atoi(j.token);; } else if(!strcmp(j.token, "rssi")) { if (yJsonParse(&j) != YJSON_PARSE_AVAIL) { return; } _rssi = atoi(j.token);; } else { yJsonSkip(&j, 1); } } }
int YNetwork::_parse(yJsonStateMachine& j) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL || j.st != YJSON_PARSE_STRUCT) { failed: return -1; } while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if(!strcmp(j.token, "logicalName")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _logicalName = _parseString(j); } else if(!strcmp(j.token, "advertisedValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _advertisedValue = _parseString(j); } else if(!strcmp(j.token, "readiness")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _readiness = (Y_READINESS_enum)atoi(j.token); } else if(!strcmp(j.token, "macAddress")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _macAddress = _parseString(j); } else if(!strcmp(j.token, "ipAddress")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _ipAddress = _parseString(j); } else if(!strcmp(j.token, "subnetMask")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _subnetMask = _parseString(j); } else if(!strcmp(j.token, "router")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _router = _parseString(j); } else if(!strcmp(j.token, "ipConfig")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _ipConfig = _parseString(j); } else if(!strcmp(j.token, "primaryDNS")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _primaryDNS = _parseString(j); } else if(!strcmp(j.token, "secondaryDNS")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _secondaryDNS = _parseString(j); } else if(!strcmp(j.token, "userPassword")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _userPassword = _parseString(j); } else if(!strcmp(j.token, "adminPassword")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _adminPassword = _parseString(j); } else if(!strcmp(j.token, "discoverable")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _discoverable = (Y_DISCOVERABLE_enum)atoi(j.token); } else if(!strcmp(j.token, "wwwWatchdogDelay")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _wwwWatchdogDelay = atoi(j.token); } else if(!strcmp(j.token, "callbackUrl")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _callbackUrl = _parseString(j); } else if(!strcmp(j.token, "callbackMethod")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _callbackMethod = (Y_CALLBACKMETHOD_enum)atoi(j.token); } else if(!strcmp(j.token, "callbackEncoding")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _callbackEncoding = (Y_CALLBACKENCODING_enum)atoi(j.token); } else if(!strcmp(j.token, "callbackCredentials")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _callbackCredentials = _parseString(j); } else if(!strcmp(j.token, "callbackMinDelay")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _callbackMinDelay = atoi(j.token); } else if(!strcmp(j.token, "callbackMaxDelay")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _callbackMaxDelay = atoi(j.token); } else if(!strcmp(j.token, "poeCurrent")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _poeCurrent = atoi(j.token); } else { // ignore unknown field yJsonSkip(&j, 1); } } if(j.st != YJSON_PARSE_STRUCT) goto failed; return 0; }
int YDisplay::_parse(yJsonStateMachine& j) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL || j.st != YJSON_PARSE_STRUCT) { failed: return -1; } while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if(!strcmp(j.token, "logicalName")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _logicalName = _parseString(j); } else if(!strcmp(j.token, "advertisedValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _advertisedValue = _parseString(j); } else if(!strcmp(j.token, "powerState")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _powerState = (Y_POWERSTATE_enum)atoi(j.token); } else if(!strcmp(j.token, "startupSeq")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _startupSeq = _parseString(j); } else if(!strcmp(j.token, "brightness")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _brightness = atoi(j.token); } else if(!strcmp(j.token, "orientation")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _orientation = (Y_ORIENTATION_enum)atoi(j.token); } else if(!strcmp(j.token, "displayWidth")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _displayWidth = atoi(j.token); } else if(!strcmp(j.token, "displayHeight")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _displayHeight = atoi(j.token); } else if(!strcmp(j.token, "displayType")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _displayType = (Y_DISPLAYTYPE_enum)atoi(j.token); } else if(!strcmp(j.token, "layerWidth")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _layerWidth = atoi(j.token); } else if(!strcmp(j.token, "layerHeight")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _layerHeight = atoi(j.token); } else if(!strcmp(j.token, "layerCount")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _layerCount = atoi(j.token); } else if(!strcmp(j.token, "command")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _command = _parseString(j); } else { // ignore unknown field yJsonSkip(&j, 1); } } if(j.st != YJSON_PARSE_STRUCT) goto failed; return 0; }
int YRelay::_parse(yJsonStateMachine& j) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL || j.st != YJSON_PARSE_STRUCT) { failed: return -1; } while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if(!strcmp(j.token, "logicalName")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _logicalName = _parseString(j); } else if(!strcmp(j.token, "advertisedValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _advertisedValue = _parseString(j); } else if(!strcmp(j.token, "state")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _state = (Y_STATE_enum)atoi(j.token); } else if(!strcmp(j.token, "output")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _output = (Y_OUTPUT_enum)atoi(j.token); } else if(!strcmp(j.token, "pulseTimer")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _pulseTimer = atoi(j.token); } else if(!strcmp(j.token, "delayedPulseTimer")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; if(j.st != YJSON_PARSE_STRUCT) goto failed; while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if(!strcmp(j.token, "moving")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _delayedPulseTimer.moving = atoi(j.token); } else if(!strcmp(j.token, "target")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _delayedPulseTimer.target = atoi(j.token); } else if(!strcmp(j.token, "ms")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _delayedPulseTimer.ms = atoi(j.token); } } if(j.st != YJSON_PARSE_STRUCT) goto failed; } else if(!strcmp(j.token, "countdown")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _countdown = atoi(j.token); } else { // ignore unknown field yJsonSkip(&j, 1); } } if(j.st != YJSON_PARSE_STRUCT) goto failed; return 0; }
int YAnButton::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "calibratedValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _calibratedValue = atoi(j.token); return 1; } if(!strcmp(j.token, "rawValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _rawValue = atoi(j.token); return 1; } if(!strcmp(j.token, "analogCalibration")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _analogCalibration = (Y_ANALOGCALIBRATION_enum)atoi(j.token); return 1; } if(!strcmp(j.token, "calibrationMax")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _calibrationMax = atoi(j.token); return 1; } if(!strcmp(j.token, "calibrationMin")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _calibrationMin = atoi(j.token); return 1; } if(!strcmp(j.token, "sensitivity")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _sensitivity = atoi(j.token); return 1; } if(!strcmp(j.token, "isPressed")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _isPressed = (Y_ISPRESSED_enum)atoi(j.token); return 1; } if(!strcmp(j.token, "lastTimePressed")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _lastTimePressed = atol(j.token); return 1; } if(!strcmp(j.token, "lastTimeReleased")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _lastTimeReleased = atol(j.token); return 1; } if(!strcmp(j.token, "pulseCounter")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _pulseCounter = atol(j.token); return 1; } if(!strcmp(j.token, "pulseTimer")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _pulseTimer = atol(j.token); return 1; } failed: return YFunction::_parseAttr(j); }
int YColorLed::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "rgbColor")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _rgbColor = atoi(j.token); return 1; } if(!strcmp(j.token, "hslColor")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _hslColor = atoi(j.token); return 1; } if(!strcmp(j.token, "rgbMove")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; if(j.st != YJSON_PARSE_STRUCT) goto failed; while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if(!strcmp(j.token, "moving")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _rgbMove.moving = atoi(j.token); } else if(!strcmp(j.token, "target")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _rgbMove.target = atoi(j.token); } else if(!strcmp(j.token, "ms")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _rgbMove.ms = atoi(j.token); } } if(j.st != YJSON_PARSE_STRUCT) goto failed; return 1; } if(!strcmp(j.token, "hslMove")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; if(j.st != YJSON_PARSE_STRUCT) goto failed; while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if(!strcmp(j.token, "moving")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _hslMove.moving = atoi(j.token); } else if(!strcmp(j.token, "target")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _hslMove.target = atoi(j.token); } else if(!strcmp(j.token, "ms")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _hslMove.ms = atoi(j.token); } } if(j.st != YJSON_PARSE_STRUCT) goto failed; return 1; } if(!strcmp(j.token, "rgbColorAtPowerOn")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _rgbColorAtPowerOn = atoi(j.token); return 1; } if(!strcmp(j.token, "blinkSeqSize")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _blinkSeqSize = atoi(j.token); return 1; } if(!strcmp(j.token, "blinkSeqMaxSize")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _blinkSeqMaxSize = atoi(j.token); return 1; } if(!strcmp(j.token, "blinkSeqSignature")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _blinkSeqSignature = atoi(j.token); return 1; } if(!strcmp(j.token, "command")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _command = _parseString(j); return 1; } failed: return YFunction::_parseAttr(j); }
int YCurrent::_parse(yJsonStateMachine& j) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL || j.st != YJSON_PARSE_STRUCT) { failed: return -1; } while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if(!strcmp(j.token, "logicalName")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _logicalName = _parseString(j); } else if(!strcmp(j.token, "advertisedValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _advertisedValue = _parseString(j); } else if(!strcmp(j.token, "unit")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _unit = _parseString(j); } else if(!strcmp(j.token, "currentValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _currentValue = floor(atof(j.token)/65536.0+.5); } else if(!strcmp(j.token, "lowestValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _lowestValue = floor(atof(j.token)/65536.0+.5); } else if(!strcmp(j.token, "highestValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _highestValue = floor(atof(j.token)/65536.0+.5); } else if(!strcmp(j.token, "currentRawValue")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _currentRawValue = atof(j.token)/65536.0; } else if(!strcmp(j.token, "calibrationParam")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _calibrationParam = _parseString(j); } else if(!strcmp(j.token, "resolution")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) return -1; _resolution = (atoi(j.token) > 100 ? 1.0 / floor(65536.0/atof(j.token)+.5) : 0.001 / floor(67.0/atof(j.token)+.5)); } else { // ignore unknown field yJsonSkip(&j, 1); } } if(j.st != YJSON_PARSE_STRUCT) goto failed; return 0; }
int YServo::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "position")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _position = atoi(j.token); return 1; } if(!strcmp(j.token, "enabled")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _enabled = (Y_ENABLED_enum)atoi(j.token); return 1; } if(!strcmp(j.token, "range")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _range = atoi(j.token); return 1; } if(!strcmp(j.token, "neutral")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _neutral = atoi(j.token); return 1; } if(!strcmp(j.token, "move")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; if(j.st != YJSON_PARSE_STRUCT) goto failed; while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if(!strcmp(j.token, "moving")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _move.moving = atoi(j.token); } else if(!strcmp(j.token, "target")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _move.target = atoi(j.token); } else if(!strcmp(j.token, "ms")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _move.ms = atoi(j.token); } } if(j.st != YJSON_PARSE_STRUCT) goto failed; return 1; } if(!strcmp(j.token, "positionAtPowerOn")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _positionAtPowerOn = atoi(j.token); return 1; } if(!strcmp(j.token, "enabledAtPowerOn")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _enabledAtPowerOn = (Y_ENABLEDATPOWERON_enum)atoi(j.token); return 1; } failed: return YFunction::_parseAttr(j); }
int YRelay::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "state")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _state = (Y_STATE_enum)atoi(j.token); return 1; } if(!strcmp(j.token, "stateAtPowerOn")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _stateAtPowerOn = (Y_STATEATPOWERON_enum)atoi(j.token); return 1; } if(!strcmp(j.token, "maxTimeOnStateA")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _maxTimeOnStateA = atol(j.token); return 1; } if(!strcmp(j.token, "maxTimeOnStateB")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _maxTimeOnStateB = atol(j.token); return 1; } if(!strcmp(j.token, "output")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _output = (Y_OUTPUT_enum)atoi(j.token); return 1; } if(!strcmp(j.token, "pulseTimer")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _pulseTimer = atol(j.token); return 1; } if(!strcmp(j.token, "delayedPulseTimer")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; if(j.st != YJSON_PARSE_STRUCT) goto failed; while(yJsonParse(&j) == YJSON_PARSE_AVAIL && j.st == YJSON_PARSE_MEMBNAME) { if(!strcmp(j.token, "moving")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _delayedPulseTimer.moving = atoi(j.token); } else if(!strcmp(j.token, "target")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _delayedPulseTimer.target = atoi(j.token); } else if(!strcmp(j.token, "ms")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _delayedPulseTimer.ms = atoi(j.token); } } if(j.st != YJSON_PARSE_STRUCT) goto failed; return 1; } if(!strcmp(j.token, "countdown")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _countdown = atol(j.token); return 1; } failed: return YFunction::_parseAttr(j); }
int YNetwork::_parseAttr(yJsonStateMachine& j) { if(!strcmp(j.token, "readiness")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _readiness = (Y_READINESS_enum)atoi(j.token); return 1; } if(!strcmp(j.token, "macAddress")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _macAddress = _parseString(j); return 1; } if(!strcmp(j.token, "ipAddress")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _ipAddress = _parseString(j); return 1; } if(!strcmp(j.token, "subnetMask")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _subnetMask = _parseString(j); return 1; } if(!strcmp(j.token, "router")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _router = _parseString(j); return 1; } if(!strcmp(j.token, "ipConfig")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _ipConfig = _parseString(j); return 1; } if(!strcmp(j.token, "primaryDNS")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _primaryDNS = _parseString(j); return 1; } if(!strcmp(j.token, "secondaryDNS")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _secondaryDNS = _parseString(j); return 1; } if(!strcmp(j.token, "ntpServer")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _ntpServer = _parseString(j); return 1; } if(!strcmp(j.token, "userPassword")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _userPassword = _parseString(j); return 1; } if(!strcmp(j.token, "adminPassword")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _adminPassword = _parseString(j); return 1; } if(!strcmp(j.token, "httpPort")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _httpPort = atoi(j.token); return 1; } if(!strcmp(j.token, "defaultPage")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _defaultPage = _parseString(j); return 1; } if(!strcmp(j.token, "discoverable")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _discoverable = (Y_DISCOVERABLE_enum)atoi(j.token); return 1; } if(!strcmp(j.token, "wwwWatchdogDelay")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _wwwWatchdogDelay = atoi(j.token); return 1; } if(!strcmp(j.token, "callbackUrl")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _callbackUrl = _parseString(j); return 1; } if(!strcmp(j.token, "callbackMethod")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _callbackMethod = (Y_CALLBACKMETHOD_enum)atoi(j.token); return 1; } if(!strcmp(j.token, "callbackEncoding")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _callbackEncoding = (Y_CALLBACKENCODING_enum)atoi(j.token); return 1; } if(!strcmp(j.token, "callbackCredentials")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _callbackCredentials = _parseString(j); return 1; } if(!strcmp(j.token, "callbackMinDelay")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _callbackMinDelay = atoi(j.token); return 1; } if(!strcmp(j.token, "callbackMaxDelay")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _callbackMaxDelay = atoi(j.token); return 1; } if(!strcmp(j.token, "poeCurrent")) { if(yJsonParse(&j) != YJSON_PARSE_AVAIL) goto failed; _poeCurrent = atoi(j.token); return 1; } failed: return YFunction::_parseAttr(j); }