mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-02 06:35:52 +08:00
Ref T432, find ATC station for frequency utility functions
This commit is contained in:
@@ -67,6 +67,16 @@ namespace BlackMisc
|
||||
return isWithinChannelSpacing(this->getFrequencyActive(), comFrequency, ChannelSpacing25KHz);
|
||||
}
|
||||
|
||||
bool CComSystem::isActiveFrequencyWithin50kHzChannel(const CFrequency &comFrequency) const
|
||||
{
|
||||
return isWithinChannelSpacing(this->getFrequencyActive(), comFrequency, ChannelSpacing50KHz);
|
||||
}
|
||||
|
||||
bool CComSystem::isActiveFrequencyWithinChannelSpacing(const CFrequency &comFrequency, CComSystem::ChannelSpacing channelSpacing) const
|
||||
{
|
||||
return isWithinChannelSpacing(this->getFrequencyActive(), comFrequency, channelSpacing);
|
||||
}
|
||||
|
||||
void CComSystem::setActiveUnicom()
|
||||
{
|
||||
this->toggleActiveStandby();
|
||||
@@ -139,9 +149,9 @@ namespace BlackMisc
|
||||
{
|
||||
if (setFrequency.isNull() || compareFrequency.isNull()) { return false; }
|
||||
if (setFrequency == compareFrequency) return true; // shortcut for many of such comparisons
|
||||
double channelSpacingKHz = 0.5 * CComSystem::channelSpacingToFrequencyKHz(channelSpacing);
|
||||
double compareFrequencyKHz = compareFrequency.value(CFrequencyUnit::kHz());
|
||||
double setFrequencyKHz = setFrequency.value(CFrequencyUnit::kHz());
|
||||
const double channelSpacingKHz = 0.5 * CComSystem::channelSpacingToFrequencyKHz(channelSpacing);
|
||||
const double compareFrequencyKHz = compareFrequency.value(CFrequencyUnit::kHz());
|
||||
const double setFrequencyKHz = setFrequency.value(CFrequencyUnit::kHz());
|
||||
return (setFrequencyKHz - channelSpacingKHz < compareFrequencyKHz) &&
|
||||
(setFrequencyKHz + channelSpacingKHz > compareFrequencyKHz);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user