Esempio n. 1
0
void
ManageLX16xxWidget::Prepare(ContainerWindow &parent, const PixelRect &rc)
{
  StaticString<64> buffer;

  if (!info.product.empty()) {
    buffer.SetASCII(info.product.c_str());
    AddReadOnly(_("Product"), NULL, buffer.c_str());
  }

  if (!info.serial.empty()) {
    buffer.SetASCII(info.serial.c_str());
    AddReadOnly(_("Serial"), NULL, buffer.c_str());
  }

  if (!info.hardware_version.empty()) {
    buffer.SetASCII(info.hardware_version.c_str());
    AddReadOnly(_("Hardware version"), NULL, buffer.c_str());
  }

  if (!info.software_version.empty()) {
    buffer.SetASCII(info.software_version.c_str());
    AddReadOnly(_("Firmware version"), NULL, buffer.c_str());
  }
}
Esempio n. 2
0
bool
VegaDevice::ParseNMEA(const char *String, NMEAInfo &info)
{
  NMEAInputLine line(String);
  char type[16];
  line.Read(type, 16);

  if (memcmp(type, "$PD", 3) == 0)
    detected = true;

  if (StringIsEqual(type, "$PDSWC"))
    return PDSWC(line, info, volatile_data);
  else if (StringIsEqual(type, "$PDAAV"))
    return PDAAV(line, info);
  else if (StringIsEqual(type, "$PDVSC"))
    return PDVSC(line, info);
  else if (StringIsEqual(type, "$PDVDV"))
    return PDVDV(line, info);
  else if (StringIsEqual(type, "$PDVDS"))
    return PDVDS(line, info);
  else if (StringIsEqual(type, "$PDVVT"))
    return PDVVT(line, info);
  else if (StringIsEqual(type, "$PDVSD")) {
    const auto message = line.Rest();
    StaticString<256> buffer;
    buffer.SetASCII(message.begin(), message.end());
    Message::AddMessage(buffer);
    return true;
  } else if (StringIsEqual(type, "$PDTSM"))
    return PDTSM(line, info);
  else
    return false;
}
Esempio n. 3
0
// PDTSM,duration_ms,"free text"
static bool
PDTSM(NMEAInputLine &line, gcc_unused NMEAInfo &info)
{
  /*
  int duration = (int)strtol(String, nullptr, 10);
  */
  line.Skip();

  const auto message = line.Rest();

  StaticString<256> buffer;
  buffer.SetASCII(message.begin(), message.end());

  // todo duration handling
  Message::AddMessage(_T("VEGA:"), buffer);

  return true;
}