本文整理汇总了C++中NMEAInputLine::ReadCheckedCompare方法的典型用法代码示例。如果您正苦于以下问题:C++ NMEAInputLine::ReadCheckedCompare方法的具体用法?C++ NMEAInputLine::ReadCheckedCompare怎么用?C++ NMEAInputLine::ReadCheckedCompare使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NMEAInputLine
的用法示例。
在下文中一共展示了NMEAInputLine::ReadCheckedCompare方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CelsiusToKelvin
/**
* Parse a "$VMVABD" sentence.
*
* Example: "$VMVABD,0000.0,M,0547.0,M,-0.0,,,MS,0.0,KH,22.4,C*65"
*/
static bool
FlytecParseVMVABD(NMEAInputLine &line, NMEAInfo &info)
{
fixed value;
// 0,1 = GPS altitude, unit
if (line.ReadCheckedCompare(info.gps_altitude, "M"))
info.gps_altitude_available.Update(info.clock);
// 2,3 = baro altitude, unit
if (line.ReadCheckedCompare(value, "M"))
info.ProvideBaroAltitudeTrue(value);
// 4-7 = integrated vario, unit
line.Skip(4);
// 8,9 = indicated or true airspeed, unit
if (line.ReadCheckedCompare(value, "KH"))
// XXX is that TAS or IAS? Documentation isn't clear.
info.ProvideBothAirspeeds(Units::ToSysUnit(value, Unit::KILOMETER_PER_HOUR));
// 10,11 = temperature, unit
info.temperature_available =
line.ReadCheckedCompare(value, "C");
if (info.temperature_available)
info.temperature = CelsiusToKelvin(value);
return true;
}