bool LXDevice::ReadFlightList(RecordedFlightList &flight_list, OperationEnvironment &env) { if (IsNano()) { if (!EnableNanoNMEA(env)) return false; assert(!busy); busy = true; bool success = Nano::ReadFlightList(port, flight_list, env); busy = false; return success; } if (!EnableCommandMode(env)) return false; assert(!busy); busy = true; bool success = ReadFlightListInner(port, flight_list, env); LX::CommandModeQuick(port, env); busy = false; return success; }
bool LXDevice::RequestNanoSetting(const char *name, OperationEnvironment &env) { if (!EnableNanoNMEA(env)) return false; nano_settings.Lock(); nano_settings.MarkOld(name); nano_settings.Unlock(); char buffer[256]; sprintf(buffer, "PLXVC,SET,R,%s", name); return PortWriteNMEA(port, buffer, env); }